Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH
This commit is contained in:
+1
-1
@@ -443,7 +443,7 @@ public class SysDictServiceImpl extends ServiceImpl<SysDictMapper, SysDict> impl
|
||||
@Override
|
||||
public String queryDictItemByValue(String code, String itemValue, String cut) {
|
||||
|
||||
String dictItemValue= sysDictMapper.queryDictTextByKey(code,itemValue);
|
||||
String dictItemValue= sysDictMapper.queryDictKeyByText(code,itemValue);
|
||||
return dictItemValue;
|
||||
|
||||
}
|
||||
|
||||
-1
@@ -5703,7 +5703,6 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
}else{
|
||||
throw new JeroBootException("Please upload a zip file or rar file");
|
||||
}
|
||||
|
||||
}
|
||||
String path = uploadpath + File.separator + "modal" + File.separator + filenameorg + System.currentTimeMillis();
|
||||
File saveDirectory = new File(path);
|
||||
|
||||
+165
-120
@@ -4,9 +4,11 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxAqcs;
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.jero.modules.ota.service.IOtaBaCxAqcsService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -16,155 +18,198 @@ import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-安全措施
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-安全措施")
|
||||
@Api(tags = "车型备案-安全措施")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxAqcs")
|
||||
@Slf4j
|
||||
public class OtaBaCxAqcsController extends JeroController<OtaBaCxAqcs, IOtaBaCxAqcsService> {
|
||||
@Autowired
|
||||
private IOtaBaCxAqcsService otaBaCxAqcsService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-分页列表查询")
|
||||
@ApiOperation(value="车型备案-安全措施-分页列表查询", notes="车型备案-安全措施-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxAqcs otaBaCxAqcs,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxAqcs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxAqcs, req.getParameterMap());
|
||||
Page<OtaBaCxAqcs> page = new Page<OtaBaCxAqcs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxAqcs> pageList = otaBaCxAqcsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxAqcsService otaBaCxAqcsService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-列表查询")
|
||||
@ApiOperation(value="车型备案-安全措施-列表查询", notes="车型备案-安全措施-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxAqcs>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-安全措施-分页列表查询", notes = "车型备案-安全措施-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxAqcs otaBaCxAqcs,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxAqcs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxAqcs, req.getParameterMap());
|
||||
Page<OtaBaCxAqcs> page = new Page<OtaBaCxAqcs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxAqcs> pageList = otaBaCxAqcsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-列表查询")
|
||||
@ApiOperation(value = "车型备案-安全措施-列表查询", notes = "车型备案-安全措施-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxAqcs>> queryList() {
|
||||
List<OtaBaCxAqcs> list = otaBaCxAqcsService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-添加")
|
||||
@ApiOperation(value="车型备案-安全措施-添加", notes="车型备案-安全措施-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxAqcs otaBaCxAqcs) {
|
||||
otaBaCxAqcsService.add(otaBaCxAqcs);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-编辑")
|
||||
@ApiOperation(value="车型备案-安全措施-编辑", notes="车型备案-安全措施-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxAqcs otaBaCxAqcs) {
|
||||
otaBaCxAqcsService.editById(otaBaCxAqcs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxAqcsService.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.otaBaCxAqcsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-通过id查询")
|
||||
@ApiOperation(value="车型备案-安全措施-通过id查询", notes="车型备案-安全措施-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxAqcs otaBaCxAqcs = otaBaCxAqcsService.queryById(id);
|
||||
if(otaBaCxAqcs==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxAqcs);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxAqcs
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-添加")
|
||||
@ApiOperation(value = "车型备案-安全措施-添加", notes = "车型备案-安全措施-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxAqcs otaBaCxAqcs) {
|
||||
otaBaCxAqcsService.add(otaBaCxAqcs);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-编辑")
|
||||
@ApiOperation(value = "车型备案-安全措施-编辑", notes = "车型备案-安全措施-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxAqcs otaBaCxAqcs) {
|
||||
otaBaCxAqcsService.editById(otaBaCxAqcs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxAqcsService.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.otaBaCxAqcsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-通过id查询")
|
||||
@ApiOperation(value = "车型备案-安全措施-通过id查询", notes = "车型备案-安全措施-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxAqcs otaBaCxAqcs = otaBaCxAqcsService.queryById(id);
|
||||
if (otaBaCxAqcs == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxAqcs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*
|
||||
* @param otaId
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-安全措施-通过otaId查询")
|
||||
@ApiOperation(value = "车型备案-安全措施-通过otaId查询", notes = "车型备案-安全措施-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
|
||||
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
|
||||
OtaBaCxAqcs otaBaCxAqcs = otaBaCxAqcsService.queryByOtaId(otaId, otaIdT);
|
||||
if (otaBaCxAqcs == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxAqcs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxAqcs
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxAqcs otaBaCxAqcs) {
|
||||
return super.exportXls(request, otaBaCxAqcs, OtaBaCxAqcs.class, "车型备案-安全措施");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxAqcs.class);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "车型备案-安全措施-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxAqcsService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-安全措施-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut,
|
||||
@RequestParam(value = "otaId", required = false) String otaId) throws Exception {
|
||||
OtaBaCxAqcs res;
|
||||
try {
|
||||
res = this.otaBaCxAqcsService.importData(file, otaId, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK(res);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+160
-121
@@ -4,6 +4,7 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxJbxx;
|
||||
@@ -11,160 +12,198 @@ import com.jero.modules.ota.service.IOtaBaCxJbxxService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-车型基本信息
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-车型基本信息")
|
||||
@Api(tags = "车型备案-车型基本信息")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxJbxx")
|
||||
@Slf4j
|
||||
public class OtaBaCxJbxxController extends JeroController<OtaBaCxJbxx, IOtaBaCxJbxxService> {
|
||||
@Autowired
|
||||
private IOtaBaCxJbxxService otaBaCxJbxxService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-分页列表查询")
|
||||
@ApiOperation(value="车型备案-车型基本信息-分页列表查询", notes="车型备案-车型基本信息-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxJbxx otaBaCxJbxx,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxJbxx> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxJbxx, req.getParameterMap());
|
||||
Page<OtaBaCxJbxx> page = new Page<OtaBaCxJbxx>(pageNo, pageSize);
|
||||
IPage<OtaBaCxJbxx> pageList = otaBaCxJbxxService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxJbxxService otaBaCxJbxxService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-列表查询")
|
||||
@ApiOperation(value="车型备案-车型基本信息-列表查询", notes="车型备案-车型基本信息-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxJbxx>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-车型基本信息-分页列表查询", notes = "车型备案-车型基本信息-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxJbxx otaBaCxJbxx,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxJbxx> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxJbxx, req.getParameterMap());
|
||||
Page<OtaBaCxJbxx> page = new Page<OtaBaCxJbxx>(pageNo, pageSize);
|
||||
IPage<OtaBaCxJbxx> pageList = otaBaCxJbxxService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-列表查询")
|
||||
@ApiOperation(value = "车型备案-车型基本信息-列表查询", notes = "车型备案-车型基本信息-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxJbxx>> queryList() {
|
||||
List<OtaBaCxJbxx> list = otaBaCxJbxxService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-添加")
|
||||
@ApiOperation(value="车型备案-车型基本信息-添加", notes="车型备案-车型基本信息-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxJbxx otaBaCxJbxx) {
|
||||
otaBaCxJbxxService.add(otaBaCxJbxx);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-编辑")
|
||||
@ApiOperation(value="车型备案-车型基本信息-编辑", notes="车型备案-车型基本信息-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxJbxx otaBaCxJbxx) {
|
||||
otaBaCxJbxxService.editById(otaBaCxJbxx);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxJbxxService.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.otaBaCxJbxxService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-通过id查询")
|
||||
@ApiOperation(value="车型备案-车型基本信息-通过id查询", notes="车型备案-车型基本信息-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxJbxx otaBaCxJbxx = otaBaCxJbxxService.queryById(id);
|
||||
if(otaBaCxJbxx==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxJbxx);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxJbxx
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-添加")
|
||||
@ApiOperation(value = "车型备案-车型基本信息-添加", notes = "车型备案-车型基本信息-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxJbxx otaBaCxJbxx) {
|
||||
OtaBaCxJbxx res = otaBaCxJbxxService.add(otaBaCxJbxx);
|
||||
return Result.OK(res);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-编辑")
|
||||
@ApiOperation(value = "车型备案-车型基本信息-编辑", notes = "车型备案-车型基本信息-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxJbxx otaBaCxJbxx) {
|
||||
otaBaCxJbxxService.editById(otaBaCxJbxx);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxJbxxService.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.otaBaCxJbxxService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-通过id查询")
|
||||
@ApiOperation(value = "车型备案-车型基本信息-通过id查询", notes = "车型备案-车型基本信息-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxJbxx otaBaCxJbxx = otaBaCxJbxxService.queryById(id);
|
||||
if (otaBaCxJbxx == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxJbxx);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过OtaId查询
|
||||
*/
|
||||
@AutoLog(value = "车型备案-车型基本信息-通过otaId查询")
|
||||
@ApiOperation(value = "车型备案-车型基本信息-通过otaId查询", notes = "车型备案-车型基本信息-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId") String otaId,
|
||||
@RequestParam(name = "otaIdT") String otaIdT) {
|
||||
OtaBaCxJbxx otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT);
|
||||
otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT);
|
||||
return Result.OK(otaBaCxJbxx);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxJbxx
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxJbxx otaBaCxJbxx) {
|
||||
return super.exportXls(request, otaBaCxJbxx, OtaBaCxJbxx.class, "车型备案-车型基本信息");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) throws Exception {
|
||||
return super.importExcel(request, response, OtaBaCxJbxx.class);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-车型基本信息-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxJbxxService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-车型基本信息-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut,
|
||||
@RequestParam(value = "otaId", required = false) String otaId) throws Exception {
|
||||
OtaBaCxJbxx res;
|
||||
try {
|
||||
res = this.otaBaCxJbxxService.importData(file, otaId, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK(res);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+161
-120
@@ -4,6 +4,8 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxJsfzbacs;
|
||||
@@ -16,155 +18,194 @@ import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-驾驶辅助系统基础备案参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-驾驶辅助系统基础备案参数")
|
||||
@Api(tags = "车型备案-驾驶辅助系统基础备案参数")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxJsfzbacs")
|
||||
@Slf4j
|
||||
public class OtaBaCxJsfzbacsController extends JeroController<OtaBaCxJsfzbacs, IOtaBaCxJsfzbacsService> {
|
||||
@Autowired
|
||||
private IOtaBaCxJsfzbacsService otaBaCxJsfzbacsService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-分页列表查询")
|
||||
@ApiOperation(value="车型备案-驾驶辅助系统基础备案参数-分页列表查询", notes="车型备案-驾驶辅助系统基础备案参数-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxJsfzbacs otaBaCxJsfzbacs,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxJsfzbacs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxJsfzbacs, req.getParameterMap());
|
||||
Page<OtaBaCxJsfzbacs> page = new Page<OtaBaCxJsfzbacs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxJsfzbacs> pageList = otaBaCxJsfzbacsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxJsfzbacsService otaBaCxJsfzbacsService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-列表查询")
|
||||
@ApiOperation(value="车型备案-驾驶辅助系统基础备案参数-列表查询", notes="车型备案-驾驶辅助系统基础备案参数-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxJsfzbacs>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-分页列表查询", notes = "车型备案-驾驶辅助系统基础备案参数-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxJsfzbacs otaBaCxJsfzbacs,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxJsfzbacs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxJsfzbacs, req.getParameterMap());
|
||||
Page<OtaBaCxJsfzbacs> page = new Page<OtaBaCxJsfzbacs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxJsfzbacs> pageList = otaBaCxJsfzbacsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-列表查询")
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-列表查询", notes = "车型备案-驾驶辅助系统基础备案参数-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxJsfzbacs>> queryList() {
|
||||
List<OtaBaCxJsfzbacs> list = otaBaCxJsfzbacsService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-添加")
|
||||
@ApiOperation(value="车型备案-驾驶辅助系统基础备案参数-添加", notes="车型备案-驾驶辅助系统基础备案参数-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
otaBaCxJsfzbacsService.add(otaBaCxJsfzbacs);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-编辑")
|
||||
@ApiOperation(value="车型备案-驾驶辅助系统基础备案参数-编辑", notes="车型备案-驾驶辅助系统基础备案参数-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
otaBaCxJsfzbacsService.editById(otaBaCxJsfzbacs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxJsfzbacsService.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.otaBaCxJsfzbacsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-通过id查询")
|
||||
@ApiOperation(value="车型备案-驾驶辅助系统基础备案参数-通过id查询", notes="车型备案-驾驶辅助系统基础备案参数-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxJsfzbacs otaBaCxJsfzbacs = otaBaCxJsfzbacsService.queryById(id);
|
||||
if(otaBaCxJsfzbacs==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxJsfzbacs);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxJsfzbacs
|
||||
*/
|
||||
* 添加
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-添加")
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-添加", notes = "车型备案-驾驶辅助系统基础备案参数-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@RequestBody JSONObject json) {
|
||||
otaBaCxJsfzbacsService.add(json);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-编辑")
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-编辑", notes = "车型备案-驾驶辅助系统基础备案参数-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
otaBaCxJsfzbacsService.editById(otaBaCxJsfzbacs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxJsfzbacsService.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.otaBaCxJsfzbacsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-通过id查询")
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-通过id查询", notes = "车型备案-驾驶辅助系统基础备案参数-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxJsfzbacs otaBaCxJsfzbacs = otaBaCxJsfzbacsService.queryById(id);
|
||||
if (otaBaCxJsfzbacs == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxJsfzbacs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*
|
||||
* @param otaId
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-驾驶辅助系统基础备案参数-通过id查询")
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-通过id查询", notes = "车型备案-驾驶辅助系统基础备案参数-通过id查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
|
||||
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
|
||||
JSONObject res = otaBaCxJsfzbacsService.queryByOtaId(otaId, otaIdT);
|
||||
if (res == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(res);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxJsfzbacs
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
return super.exportXls(request, otaBaCxJsfzbacs, OtaBaCxJsfzbacs.class, "车型备案-驾驶辅助系统基础备案参数");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxJsfzbacs.class);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxJsfzbacsService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-驾驶辅助系统基础备案参数-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut,
|
||||
@RequestParam(value = "otaId", required = false) String otaId) throws Exception {
|
||||
try {
|
||||
this.otaBaCxJsfzbacsService.importData(file, otaId, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+162
-120
@@ -4,6 +4,8 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjjsmccs;
|
||||
@@ -16,155 +18,195 @@ import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-可在线升级的驾驶辅助功能名称与参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-可在线升级的驾驶辅助功能名称与参数")
|
||||
@Api(tags = "车型备案-可在线升级的驾驶辅助功能名称与参数")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxKsjjsmccs")
|
||||
@Slf4j
|
||||
public class OtaBaCxKsjjsmccsController extends JeroController<OtaBaCxKsjjsmccs, IOtaBaCxKsjjsmccsService> {
|
||||
@Autowired
|
||||
private IOtaBaCxKsjjsmccsService otaBaCxKsjjsmccsService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-分页列表查询")
|
||||
@ApiOperation(value="车型备案-可在线升级的驾驶辅助功能名称与参数-分页列表查询", notes="车型备案-可在线升级的驾驶辅助功能名称与参数-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxKsjjsmccs otaBaCxKsjjsmccs,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxKsjjsmccs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxKsjjsmccs, req.getParameterMap());
|
||||
Page<OtaBaCxKsjjsmccs> page = new Page<OtaBaCxKsjjsmccs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxKsjjsmccs> pageList = otaBaCxKsjjsmccsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxKsjjsmccsService otaBaCxKsjjsmccsService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-列表查询")
|
||||
@ApiOperation(value="车型备案-可在线升级的驾驶辅助功能名称与参数-列表查询", notes="车型备案-可在线升级的驾驶辅助功能名称与参数-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxKsjjsmccs>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-分页列表查询", notes = "车型备案-可在线升级的驾驶辅助功能名称与参数-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxKsjjsmccs otaBaCxKsjjsmccs,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxKsjjsmccs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxKsjjsmccs, req.getParameterMap());
|
||||
Page<OtaBaCxKsjjsmccs> page = new Page<OtaBaCxKsjjsmccs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxKsjjsmccs> pageList = otaBaCxKsjjsmccsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-列表查询")
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-列表查询", notes = "车型备案-可在线升级的驾驶辅助功能名称与参数-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxKsjjsmccs>> queryList() {
|
||||
List<OtaBaCxKsjjsmccs> list = otaBaCxKsjjsmccsService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-添加")
|
||||
@ApiOperation(value="车型备案-可在线升级的驾驶辅助功能名称与参数-添加", notes="车型备案-可在线升级的驾驶辅助功能名称与参数-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxKsjjsmccs otaBaCxKsjjsmccs) {
|
||||
otaBaCxKsjjsmccsService.add(otaBaCxKsjjsmccs);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-编辑")
|
||||
@ApiOperation(value="车型备案-可在线升级的驾驶辅助功能名称与参数-编辑", notes="车型备案-可在线升级的驾驶辅助功能名称与参数-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxKsjjsmccs otaBaCxKsjjsmccs) {
|
||||
otaBaCxKsjjsmccsService.editById(otaBaCxKsjjsmccs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxKsjjsmccsService.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.otaBaCxKsjjsmccsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过id查询")
|
||||
@ApiOperation(value="车型备案-可在线升级的驾驶辅助功能名称与参数-通过id查询", notes="车型备案-可在线升级的驾驶辅助功能名称与参数-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxKsjjsmccs otaBaCxKsjjsmccs = otaBaCxKsjjsmccsService.queryById(id);
|
||||
if(otaBaCxKsjjsmccs==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxKsjjsmccs);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxKsjjsmccs
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-添加")
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-添加", notes = "车型备案-可在线升级的驾驶辅助功能名称与参数-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@RequestBody JSONObject json) {
|
||||
otaBaCxKsjjsmccsService.add(json);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-编辑")
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-编辑", notes = "车型备案-可在线升级的驾驶辅助功能名称与参数-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxKsjjsmccs otaBaCxKsjjsmccs) {
|
||||
otaBaCxKsjjsmccsService.editById(otaBaCxKsjjsmccs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxKsjjsmccsService.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.otaBaCxKsjjsmccsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过id查询")
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过id查询", notes = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxKsjjsmccs otaBaCxKsjjsmccs = otaBaCxKsjjsmccsService.queryById(id);
|
||||
if (otaBaCxKsjjsmccs == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxKsjjsmccs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*
|
||||
* @param otaId
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过otaId查询")
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过otaId查询", notes = "车型备案-可在线升级的驾驶辅助功能名称与参数-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
|
||||
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
|
||||
JSONObject json = otaBaCxKsjjsmccsService.queryByOtaId(otaId, otaIdT);
|
||||
if (json == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(json);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxKsjjsmccs
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxKsjjsmccs otaBaCxKsjjsmccs) {
|
||||
return super.exportXls(request, otaBaCxKsjjsmccs, OtaBaCxKsjjsmccs.class, "车型备案-可在线升级的驾驶辅助功能名称与参数");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxKsjjsmccs.class);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxKsjjsmccsService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-可在线升级的驾驶辅助功能名称与参数-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut,
|
||||
@RequestParam(value = "otaId", required = false) String otaId) throws Exception {
|
||||
try {
|
||||
this.otaBaCxKsjjsmccsService.importData(file, otaId, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+164
-120
@@ -4,9 +4,12 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjxtmccs;
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.jero.modules.ota.service.IOtaBaCxKsjxtmccsService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -16,155 +19,196 @@ import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-可升级的系统名称参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-可升级的系统名称参数")
|
||||
@Api(tags = "车型备案-可升级的系统名称参数")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxKsjxtmccs")
|
||||
@Slf4j
|
||||
public class OtaBaCxKsjxtmccsController extends JeroController<OtaBaCxKsjxtmccs, IOtaBaCxKsjxtmccsService> {
|
||||
@Autowired
|
||||
private IOtaBaCxKsjxtmccsService otaBaCxKsjxtmccsService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-分页列表查询")
|
||||
@ApiOperation(value="车型备案-可升级的系统名称参数-分页列表查询", notes="车型备案-可升级的系统名称参数-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxKsjxtmccs otaBaCxKsjxtmccs,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxKsjxtmccs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxKsjxtmccs, req.getParameterMap());
|
||||
Page<OtaBaCxKsjxtmccs> page = new Page<OtaBaCxKsjxtmccs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxKsjxtmccs> pageList = otaBaCxKsjxtmccsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxKsjxtmccsService otaBaCxKsjxtmccsService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-列表查询")
|
||||
@ApiOperation(value="车型备案-可升级的系统名称参数-列表查询", notes="车型备案-可升级的系统名称参数-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxKsjxtmccs>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-分页列表查询", notes = "车型备案-可升级的系统名称参数-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxKsjxtmccs otaBaCxKsjxtmccs,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxKsjxtmccs> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxKsjxtmccs, req.getParameterMap());
|
||||
Page<OtaBaCxKsjxtmccs> page = new Page<OtaBaCxKsjxtmccs>(pageNo, pageSize);
|
||||
IPage<OtaBaCxKsjxtmccs> pageList = otaBaCxKsjxtmccsService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-列表查询")
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-列表查询", notes = "车型备案-可升级的系统名称参数-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxKsjxtmccs>> queryList() {
|
||||
List<OtaBaCxKsjxtmccs> list = otaBaCxKsjxtmccsService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-添加")
|
||||
@ApiOperation(value="车型备案-可升级的系统名称参数-添加", notes="车型备案-可升级的系统名称参数-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxKsjxtmccs otaBaCxKsjxtmccs) {
|
||||
otaBaCxKsjxtmccsService.add(otaBaCxKsjxtmccs);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-编辑")
|
||||
@ApiOperation(value="车型备案-可升级的系统名称参数-编辑", notes="车型备案-可升级的系统名称参数-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxKsjxtmccs otaBaCxKsjxtmccs) {
|
||||
otaBaCxKsjxtmccsService.editById(otaBaCxKsjxtmccs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxKsjxtmccsService.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.otaBaCxKsjxtmccsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-通过id查询")
|
||||
@ApiOperation(value="车型备案-可升级的系统名称参数-通过id查询", notes="车型备案-可升级的系统名称参数-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxKsjxtmccs otaBaCxKsjxtmccs = otaBaCxKsjxtmccsService.queryById(id);
|
||||
if(otaBaCxKsjxtmccs==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxKsjxtmccs);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxKsjxtmccs
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-添加")
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-添加", notes = "车型备案-可升级的系统名称参数-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@RequestBody JSONObject json) {
|
||||
otaBaCxKsjxtmccsService.add(json);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-编辑")
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-编辑", notes = "车型备案-可升级的系统名称参数-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxKsjxtmccs otaBaCxKsjxtmccs) {
|
||||
otaBaCxKsjxtmccsService.editById(otaBaCxKsjxtmccs);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxKsjxtmccsService.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.otaBaCxKsjxtmccsService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-通过id查询")
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-通过id查询", notes = "车型备案-可升级的系统名称参数-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxKsjxtmccs otaBaCxKsjxtmccs = otaBaCxKsjxtmccsService.queryById(id);
|
||||
if (otaBaCxKsjxtmccs == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxKsjxtmccs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*
|
||||
* @param otaId
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-可升级的系统名称参数-通过iotaId查询")
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-通过otaId查询", notes = "车型备案-可升级的系统名称参数-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
|
||||
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
|
||||
JSONObject json = otaBaCxKsjxtmccsService.queryByOtaId(otaId, otaIdT);
|
||||
if (json == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(json);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxKsjxtmccs
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxKsjxtmccs otaBaCxKsjxtmccs) {
|
||||
return super.exportXls(request, otaBaCxKsjxtmccs, OtaBaCxKsjxtmccs.class, "车型备案-可升级的系统名称参数");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxKsjxtmccs.class);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxKsjxtmccsService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-可升级的系统名称参数-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut,
|
||||
@RequestParam(value = "otaId", required = false) String otaId) throws Exception {
|
||||
try {
|
||||
this.otaBaCxKsjxtmccsService.importData(file, otaId, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+167
-135
@@ -1,5 +1,6 @@
|
||||
package com.jero.modules.ota.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -12,177 +13,208 @@ import com.jero.modules.ota.service.IOtaBaCxListService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 车型及功能备案列表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型及功能备案列表")
|
||||
@Api(tags = "车型及功能备案列表")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxList")
|
||||
@Slf4j
|
||||
public class OtaBaCxListController extends JeroController<OtaBaCxList, IOtaBaCxListService> {
|
||||
@Autowired
|
||||
private IOtaBaCxListService otaBaCxListService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxList
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-分页列表查询")
|
||||
@ApiOperation(value="车型及功能备案列表-分页列表查询", notes="车型及功能备案列表-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxList otaBaCxList,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxList> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxList, req.getParameterMap());
|
||||
Page<OtaBaCxList> page = new Page<OtaBaCxList>(pageNo, pageSize);
|
||||
IPage<OtaBaCxList> pageList = otaBaCxListService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxListService otaBaCxListService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-列表查询")
|
||||
@ApiOperation(value="车型及功能备案列表-列表查询", notes="车型及功能备案列表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxList>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxList
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-分页列表查询")
|
||||
@ApiOperation(value = "车型及功能备案列表-分页列表查询", notes = "车型及功能备案列表-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxList otaBaCxList,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxList> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxList, req.getParameterMap());
|
||||
Page<OtaBaCxList> page = new Page<OtaBaCxList>(pageNo, pageSize);
|
||||
IPage<OtaBaCxList> pageList = otaBaCxListService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-列表查询")
|
||||
@ApiOperation(value = "车型及功能备案列表-列表查询", notes = "车型及功能备案列表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxList>> queryList() {
|
||||
List<OtaBaCxList> list = otaBaCxListService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxList
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-添加")
|
||||
@ApiOperation(value="车型及功能备案列表-添加", notes="车型及功能备案列表-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxList otaBaCxList) {
|
||||
otaBaCxListService.add(otaBaCxList);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxList
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-编辑")
|
||||
@ApiOperation(value="车型及功能备案列表-编辑", notes="车型及功能备案列表-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxList otaBaCxList) {
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxListService.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.otaBaCxListService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-通过id查询")
|
||||
@ApiOperation(value="车型及功能备案列表-通过id查询", notes="车型及功能备案列表-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(id);
|
||||
if(otaBaCxList==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxList
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxList
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-添加")
|
||||
@ApiOperation(value = "车型及功能备案列表-添加", notes = "车型及功能备案列表-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxList otaBaCxList) {
|
||||
otaBaCxListService.add(otaBaCxList);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxList
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-编辑")
|
||||
@ApiOperation(value = "车型及功能备案列表-编辑", notes = "车型及功能备案列表-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxList otaBaCxList) {
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxListService.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.otaBaCxListService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-通过id查询")
|
||||
@ApiOperation(value = "车型及功能备案列表-通过id查询", notes = "车型及功能备案列表-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(id);
|
||||
if (otaBaCxList == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxList
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxList otaBaCxList) {
|
||||
return super.exportXls(request, otaBaCxList, OtaBaCxList.class, "车型及功能备案列表");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxList.class);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 备案维护
|
||||
*
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-备案维护")
|
||||
@ApiOperation(value = "车型及功能备案列表-备案维护", notes = "车型及功能备案列表-备案维护")
|
||||
@PostMapping(value = "/batchRecord")
|
||||
public Result<?> batchRecord(@RequestParam(name = "ids", required = true) String ids,
|
||||
@RequestParam(name = "bazt", required = true) String bazt,
|
||||
@RequestParam(name = "batjsj", required = true) String batjsj,
|
||||
@RequestParam(name = "bz", required = true) String bz,
|
||||
@RequestParam(name = "cut") String cut) {
|
||||
otaBaCxListService.batchRecord(ids, bazt, batjsj, bz, cut);
|
||||
return Result.OK("备案维护成功!");
|
||||
}
|
||||
/**
|
||||
* 备案维护
|
||||
*/
|
||||
@AutoLog(value = "车型及功能备案列表-备案维护")
|
||||
@ApiOperation(value = "车型及功能备案列表-备案维护", notes = "车型及功能备案列表-备案维护")
|
||||
@PostMapping(value = "/batchRecord")
|
||||
public Result<?> batchRecord(@RequestBody JSONObject json) {
|
||||
String ids = json.getString("ids");
|
||||
String bazt = json.getString("bazt");
|
||||
String batjsj = json.getString("batjsj");
|
||||
String bz = json.getString("bz");
|
||||
String cut = json.getString("cut");
|
||||
otaBaCxListService.batchRecord(ids, bazt, batjsj, bz, cut);
|
||||
return Result.OK("备案维护成功!");
|
||||
}
|
||||
|
||||
}
|
||||
@ApiOperation(value = "车型及功能备案列表-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxListService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型及功能备案列表-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut) throws Exception {
|
||||
try {
|
||||
this.otaBaCxListService.importData(file, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK("导入成功");
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型及功能备案列表-数据导出")
|
||||
@GetMapping(value = "/exportData")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportData(@RequestParam(value = "otaId", required = false) String otaId, HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxListService.exportData(otaId, response, request);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+17
@@ -144,6 +144,23 @@ public class OtaBaCxLsjlController extends JeroController<OtaBaCxLsjl, IOtaBaCxL
|
||||
return Result.OK(otaBaCxLsjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*
|
||||
* @param otaId
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-历史记录-通过otaId查询")
|
||||
@ApiOperation(value="车型备案-历史记录-通过otaId查询", notes="车型备案-历史记录-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name="otaId",required=true) String otaId) {
|
||||
List<OtaBaCxLsjl> otaBaCxLsjlList = otaBaCxLsjlService.queryByOtaId(otaId);
|
||||
if(otaBaCxLsjlList==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxLsjlList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
|
||||
+136
-120
@@ -4,6 +4,7 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxQt;
|
||||
@@ -22,146 +23,161 @@ import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-其他升级信息
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-其他升级信息")
|
||||
@Api(tags = "车型备案-其他升级信息")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxQt")
|
||||
@Slf4j
|
||||
public class OtaBaCxQtController extends JeroController<OtaBaCxQt, IOtaBaCxQtService> {
|
||||
@Autowired
|
||||
private IOtaBaCxQtService otaBaCxQtService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-分页列表查询")
|
||||
@ApiOperation(value="车型备案-其他升级信息-分页列表查询", notes="车型备案-其他升级信息-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxQt otaBaCxQt,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxQt> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxQt, req.getParameterMap());
|
||||
Page<OtaBaCxQt> page = new Page<OtaBaCxQt>(pageNo, pageSize);
|
||||
IPage<OtaBaCxQt> pageList = otaBaCxQtService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxQtService otaBaCxQtService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-列表查询")
|
||||
@ApiOperation(value="车型备案-其他升级信息-列表查询", notes="车型备案-其他升级信息-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxQt>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-其他升级信息-分页列表查询", notes = "车型备案-其他升级信息-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxQt otaBaCxQt,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxQt> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxQt, req.getParameterMap());
|
||||
Page<OtaBaCxQt> page = new Page<OtaBaCxQt>(pageNo, pageSize);
|
||||
IPage<OtaBaCxQt> pageList = otaBaCxQtService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-列表查询")
|
||||
@ApiOperation(value = "车型备案-其他升级信息-列表查询", notes = "车型备案-其他升级信息-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxQt>> queryList() {
|
||||
List<OtaBaCxQt> list = otaBaCxQtService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-添加")
|
||||
@ApiOperation(value="车型备案-其他升级信息-添加", notes="车型备案-其他升级信息-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxQt otaBaCxQt) {
|
||||
otaBaCxQtService.add(otaBaCxQt);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-编辑")
|
||||
@ApiOperation(value="车型备案-其他升级信息-编辑", notes="车型备案-其他升级信息-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxQt otaBaCxQt) {
|
||||
otaBaCxQtService.editById(otaBaCxQt);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxQtService.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.otaBaCxQtService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-通过id查询")
|
||||
@ApiOperation(value="车型备案-其他升级信息-通过id查询", notes="车型备案-其他升级信息-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxQt otaBaCxQt = otaBaCxQtService.queryById(id);
|
||||
if(otaBaCxQt==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxQt);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxQt
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-添加")
|
||||
@ApiOperation(value = "车型备案-其他升级信息-添加", notes = "车型备案-其他升级信息-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxQt otaBaCxQt) {
|
||||
otaBaCxQtService.add(otaBaCxQt);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-编辑")
|
||||
@ApiOperation(value = "车型备案-其他升级信息-编辑", notes = "车型备案-其他升级信息-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxQt otaBaCxQt) {
|
||||
otaBaCxQtService.editById(otaBaCxQt);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxQtService.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.otaBaCxQtService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-通过id查询")
|
||||
@ApiOperation(value = "车型备案-其他升级信息-通过id查询", notes = "车型备案-其他升级信息-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxQt otaBaCxQt = otaBaCxQtService.queryById(id);
|
||||
if (otaBaCxQt == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxQt);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*/
|
||||
@AutoLog(value = "车型备案-其他升级信息-通过otaId查询")
|
||||
@ApiOperation(value = "车型备案-其他升级信息-通过otaId查询", notes = "车型备案-其他升级信息-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
|
||||
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
|
||||
OtaBaCxQt otaBaCxQt = otaBaCxQtService.queryByOtaId(otaId, otaIdT);
|
||||
if (otaBaCxQt == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxQt);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxQt
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxQt otaBaCxQt) {
|
||||
return super.exportXls(request, otaBaCxQt, OtaBaCxQt.class, "车型备案-其他升级信息");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxQt.class);
|
||||
|
||||
+187
@@ -0,0 +1,187 @@
|
||||
package com.jero.modules.ota.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-填写记录表")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxTxjl")
|
||||
@Slf4j
|
||||
public class OtaBaCxTxjlController extends JeroController<OtaBaCxTxjl, IOtaBaCxTxjlService> {
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-填写记录表-分页列表查询")
|
||||
@ApiOperation(value="车型备案-填写记录表-分页列表查询", notes="车型备案-填写记录表-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxTxjl otaBaCxTxjl,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxTxjl> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxTxjl, req.getParameterMap());
|
||||
Page<OtaBaCxTxjl> page = new Page<OtaBaCxTxjl>(pageNo, pageSize);
|
||||
IPage<OtaBaCxTxjl> pageList = otaBaCxTxjlService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-填写记录表-列表查询")
|
||||
@ApiOperation(value="车型备案-填写记录表-列表查询", notes="车型备案-填写记录表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxTxjl>> queryList() {
|
||||
List<OtaBaCxTxjl> list = otaBaCxTxjlService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-填写记录表-添加")
|
||||
@ApiOperation(value="车型备案-填写记录表-添加", notes="车型备案-填写记录表-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxTxjl otaBaCxTxjl) {
|
||||
otaBaCxTxjlService.add(otaBaCxTxjl);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-填写记录表-编辑")
|
||||
@ApiOperation(value="车型备案-填写记录表-编辑", notes="车型备案-填写记录表-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxTxjl otaBaCxTxjl) {
|
||||
otaBaCxTxjlService.editById(otaBaCxTxjl);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxTxjlService.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.otaBaCxTxjlService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-填写记录表-通过id查询")
|
||||
@ApiOperation(value="车型备案-填写记录表-通过id查询", notes="车型备案-填写记录表-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxTxjl otaBaCxTxjl = otaBaCxTxjlService.queryById(id);
|
||||
if(otaBaCxTxjl==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过otaId查询
|
||||
*
|
||||
* @param otaId
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-填写记录表-通过otaId查询")
|
||||
@ApiOperation(value="车型备案-填写记录表-通过otaId查询", notes="车型备案-填写记录表-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name="otaId",required=true) String otaId) {
|
||||
List<OtaBaCxTxjl> otaBaCxTxjlList = otaBaCxTxjlService.queryByOtaId(otaId);
|
||||
if(otaBaCxTxjlList==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxTxjlList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxTxjl
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxTxjl otaBaCxTxjl) {
|
||||
return super.exportXls(request, otaBaCxTxjl, OtaBaCxTxjl.class, "车型备案-填写记录表");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxTxjl.class);
|
||||
}
|
||||
|
||||
}
|
||||
+172
-132
@@ -1,170 +1,210 @@
|
||||
package com.jero.modules.ota.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.jero.modules.ota.service.IOtaBaCxZxsjyqService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
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.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.jero.modules.ota.service.IOtaBaCxZxsjyqService;
|
||||
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.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 车型备案-在线升级要求
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型备案-在线升级要求")
|
||||
@Api(tags = "车型备案-在线升级要求")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaCxZxsjyq")
|
||||
@Slf4j
|
||||
public class OtaBaCxZxsjyqController extends JeroController<OtaBaCxZxsjyq, IOtaBaCxZxsjyqService> {
|
||||
@Autowired
|
||||
private IOtaBaCxZxsjyqService otaBaCxZxsjyqService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-分页列表查询")
|
||||
@ApiOperation(value="车型备案-在线升级要求-分页列表查询", notes="车型备案-在线升级要求-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxZxsjyq otaBaCxZxsjyq,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxZxsjyq> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxZxsjyq, req.getParameterMap());
|
||||
Page<OtaBaCxZxsjyq> page = new Page<OtaBaCxZxsjyq>(pageNo, pageSize);
|
||||
IPage<OtaBaCxZxsjyq> pageList = otaBaCxZxsjyqService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Autowired
|
||||
private IOtaBaCxZxsjyqService otaBaCxZxsjyqService;
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-列表查询")
|
||||
@ApiOperation(value="车型备案-在线升级要求-列表查询", notes="车型备案-在线升级要求-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxZxsjyq>> queryList() {
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-分页列表查询")
|
||||
@ApiOperation(value = "车型备案-在线升级要求-分页列表查询", notes = "车型备案-在线升级要求-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaCxZxsjyq otaBaCxZxsjyq,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaCxZxsjyq> queryWrapper = QueryGenerator.initQueryWrapper(otaBaCxZxsjyq, req.getParameterMap());
|
||||
Page<OtaBaCxZxsjyq> page = new Page<OtaBaCxZxsjyq>(pageNo, pageSize);
|
||||
IPage<OtaBaCxZxsjyq> pageList = otaBaCxZxsjyqService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-列表查询")
|
||||
@ApiOperation(value = "车型备案-在线升级要求-列表查询", notes = "车型备案-在线升级要求-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaCxZxsjyq>> queryList() {
|
||||
List<OtaBaCxZxsjyq> list = otaBaCxZxsjyqService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-添加")
|
||||
@ApiOperation(value="车型备案-在线升级要求-添加", notes="车型备案-在线升级要求-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
otaBaCxZxsjyqService.add(otaBaCxZxsjyq);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-编辑")
|
||||
@ApiOperation(value="车型备案-在线升级要求-编辑", notes="车型备案-在线升级要求-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
otaBaCxZxsjyqService.editById(otaBaCxZxsjyq);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxZxsjyqService.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.otaBaCxZxsjyqService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-通过id查询")
|
||||
@ApiOperation(value="车型备案-在线升级要求-通过id查询", notes="车型备案-在线升级要求-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaCxZxsjyq otaBaCxZxsjyq = otaBaCxZxsjyqService.queryById(id);
|
||||
if(otaBaCxZxsjyq==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxZxsjyq);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxZxsjyq
|
||||
*/
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-添加")
|
||||
@ApiOperation(value = "车型备案-在线升级要求-添加", notes = "车型备案-在线升级要求-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
otaBaCxZxsjyqService.add(otaBaCxZxsjyq);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-编辑")
|
||||
@ApiOperation(value = "车型备案-在线升级要求-编辑", notes = "车型备案-在线升级要求-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
otaBaCxZxsjyqService.editById(otaBaCxZxsjyq);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaCxZxsjyqService.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.otaBaCxZxsjyqService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-通过id查询")
|
||||
@ApiOperation(value = "车型备案-在线升级要求-通过id查询", notes = "车型备案-在线升级要求-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
OtaBaCxZxsjyq otaBaCxZxsjyq = otaBaCxZxsjyqService.queryById(id);
|
||||
if (otaBaCxZxsjyq == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxZxsjyq);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过OtaId查询
|
||||
*/
|
||||
@AutoLog(value = "车型备案-在线升级要求-通过otaId查询")
|
||||
@ApiOperation(value = "车型备案-在线升级要求-通过otaId查询", notes = "车型备案-在线升级要求-通过otaId查询")
|
||||
@GetMapping(value = "/queryByOtaId")
|
||||
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
|
||||
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
|
||||
OtaBaCxZxsjyq otaBaCxZxsjyq = otaBaCxZxsjyqService.queryByOtaId(otaId, otaIdT);
|
||||
if (otaBaCxZxsjyq == null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaCxZxsjyq);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaCxZxsjyq
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
return super.exportXls(request, otaBaCxZxsjyq, OtaBaCxZxsjyq.class, "车型备案-在线升级要求");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaCxZxsjyq.class);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-在线升级要求-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
// @RequiresPermissions("otaBaCx:exportTemplate")
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
this.otaBaCxZxsjyqService.exportTemplate(response, request);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "车型备案-在线升级要求-数据导入")
|
||||
@PostMapping(value = "/importData")
|
||||
// @RequiresPermissions("otaBaCx:importData")
|
||||
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
|
||||
@RequestParam(value = "cut", required = false) String cut,
|
||||
@RequestParam(value = "otaId", required = false) String otaId) throws Exception {
|
||||
OtaBaCxZxsjyq res;
|
||||
try {
|
||||
res = this.otaBaCxZxsjyqService.importData(file, otaId, cut);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK(res);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
package com.jero.modules.ota.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.ota.entity.OtaBaSjTxjl;
|
||||
import com.jero.modules.ota.service.IOtaBaSjTxjlService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 车型升级-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="车型升级-填写记录表")
|
||||
@RestController
|
||||
@RequestMapping("/ota/otaBaSjTxjl")
|
||||
@Slf4j
|
||||
public class OtaBaSjTxjlController extends JeroController<OtaBaSjTxjl, IOtaBaSjTxjlService> {
|
||||
@Autowired
|
||||
private IOtaBaSjTxjlService otaBaSjTxjlService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型升级-填写记录表-分页列表查询")
|
||||
@ApiOperation(value="车型升级-填写记录表-分页列表查询", notes="车型升级-填写记录表-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(OtaBaSjTxjl otaBaSjTxjl,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<OtaBaSjTxjl> queryWrapper = QueryGenerator.initQueryWrapper(otaBaSjTxjl, req.getParameterMap());
|
||||
Page<OtaBaSjTxjl> page = new Page<OtaBaSjTxjl>(pageNo, pageSize);
|
||||
IPage<OtaBaSjTxjl> pageList = otaBaSjTxjlService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型升级-填写记录表-列表查询")
|
||||
@ApiOperation(value="车型升级-填写记录表-列表查询", notes="车型升级-填写记录表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<OtaBaSjTxjl>> queryList() {
|
||||
List<OtaBaSjTxjl> list = otaBaSjTxjlService.queryList();
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型升级-填写记录表-添加")
|
||||
@ApiOperation(value="车型升级-填写记录表-添加", notes="车型升级-填写记录表-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody OtaBaSjTxjl otaBaSjTxjl) {
|
||||
otaBaSjTxjlService.add(otaBaSjTxjl);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型升级-填写记录表-编辑")
|
||||
@ApiOperation(value="车型升级-填写记录表-编辑", notes="车型升级-填写记录表-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody OtaBaSjTxjl otaBaSjTxjl) {
|
||||
otaBaSjTxjlService.editById(otaBaSjTxjl);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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) {
|
||||
otaBaSjTxjlService.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.otaBaSjTxjlService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "车型升级-填写记录表-通过id查询")
|
||||
@ApiOperation(value="车型升级-填写记录表-通过id查询", notes="车型升级-填写记录表-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
OtaBaSjTxjl otaBaSjTxjl = otaBaSjTxjlService.queryById(id);
|
||||
if(otaBaSjTxjl==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(otaBaSjTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param otaBaSjTxjl
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, OtaBaSjTxjl otaBaSjTxjl) {
|
||||
return super.exportXls(request, otaBaSjTxjl, OtaBaSjTxjl.class, "车型升级-填写记录表");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, OtaBaSjTxjl.class);
|
||||
}
|
||||
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
package com.jero.modules.ota.entity;
|
||||
|
||||
public class AttachmentEO {
|
||||
private String id;
|
||||
private String fileName;
|
||||
|
||||
public AttachmentEO() {
|
||||
}
|
||||
|
||||
public AttachmentEO(String id, String fileName) {
|
||||
this.id = id;
|
||||
this.fileName = fileName;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getFileName() {
|
||||
return fileName;
|
||||
}
|
||||
|
||||
public void setFileName(String fileName) {
|
||||
this.fileName = fileName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "{" +
|
||||
"id='" + id + '\'' +
|
||||
", fileName='" + fileName + '\'' +
|
||||
'}';
|
||||
}
|
||||
|
||||
}
|
||||
+10
@@ -3,7 +3,10 @@ package com.jero.modules.ota.entity;
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
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 lombok.Data;
|
||||
@@ -69,21 +72,25 @@ public class OtaBaCxAqcs implements Serializable {
|
||||
/**保护机制*/
|
||||
@Excel(name = "保护机制", width = 15)
|
||||
@ApiModelProperty(value = "保护机制")
|
||||
@Dict(dicCode = "protection_mechanism")
|
||||
private java.lang.String bhjz;
|
||||
|
||||
/**防失效机制*/
|
||||
@Excel(name = "防失效机制", width = 15)
|
||||
@ApiModelProperty(value = "防失效机制")
|
||||
@Dict(dicCode = "fail_safe_mechanism")
|
||||
private java.lang.String fsxjz;
|
||||
|
||||
/**升级失败措施*/
|
||||
@Excel(name = "升级失败措施", width = 15)
|
||||
@ApiModelProperty(value = "升级失败措施")
|
||||
@Dict(dicCode = "upgrade_failure")
|
||||
private java.lang.String sjsbcs;
|
||||
|
||||
/**信息安全机制*/
|
||||
@Excel(name = "信息安全机制", width = 15)
|
||||
@ApiModelProperty(value = "信息安全机制")
|
||||
@Dict(dicCode = "Information_security_mechanism")
|
||||
private java.lang.String xxaqjz;
|
||||
|
||||
/**证明材料*/
|
||||
@@ -91,4 +98,7 @@ public class OtaBaCxAqcs implements Serializable {
|
||||
@ApiModelProperty(value = "证明材料")
|
||||
private java.lang.String zmcl;
|
||||
|
||||
@TableField(exist = false)
|
||||
private List<AttachmentEO> zmclList;
|
||||
|
||||
}
|
||||
|
||||
@@ -119,6 +119,7 @@ public class OtaBaCxJbxx implements Serializable {
|
||||
/**通信终端*/
|
||||
@Excel(name = "通信终端", width = 15)
|
||||
@ApiModelProperty(value = "通信终端")
|
||||
@Dict(dicCode = "communication_terminal")
|
||||
private java.lang.String txzd;
|
||||
|
||||
/**车端OTA升级管理系统*/
|
||||
|
||||
+92
@@ -3,6 +3,8 @@ package com.jero.modules.ota.entity;
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
@@ -451,4 +453,94 @@ public class OtaBaCxJsfzbacs implements Serializable {
|
||||
@ApiModelProperty(value = "事件数据记录系统生产企业")
|
||||
private java.lang.String edrScqy;
|
||||
|
||||
public OtaBaCxJsfzbacs(){
|
||||
|
||||
}
|
||||
|
||||
public OtaBaCxJsfzbacs(String id, String createBy, Date createTime, String updateBy, Date updateTime, String sysOrgCode, String otaId, String wlaqyqPz, String wlaqyqSl, String wlaqyqBzwz, String wlaqyqGgxh, String wlaqyqScqy, String hmbldPz, String hmbldSl, String hmbldBzwz, String hmbldGgxh, String hmbldScqy, String csbldPz, String csbldSl, String csbldBzwz, String csbldGgxh, String csbldScqy, String sxthsPz, String sxthsSl, String sxthsBzwz, String sxthsGgxh, String sxthsScqy, String sxtdsdPz, String sxtdsdSl, String sxtdsdBzwz, String sxtdsdGgxh, String sxtdsdScqy, String jsyjkPz, String jsyjkSl, String jsyjkBzwz, String jsyjkGgxh, String jsyjkScqy, String jsyhwPz, String jsyhwSl, String jsyhwBzwz, String jsyhwGgxh, String jsyhwScqy, String czwxdwPz, String czwxdwGgxh, String czwxdwScqy, String gxdhPz, String gxdhGgxh, String gxdhScqy, String lsjPz, String lsjGgxh, String lsjScqy, String gjddtPz, String gjddtGgxh, String gjddtScqy, String dzwlPz, String dzwlDxxgcs, String cztxPz, String cztxXtmc, String cztxGgxh, String cztxScqy, String cztxBbh, String cztxKfqy, String jsfzczjPz, String jsfzczjMc, String jsfzczjYjxh, String jsfzczjScqy, String jsfzzsqPz, String jsfzzsqMc, String jsfzzsqYjxh, String jsfzzsqScqy, String fxptstsPz, String fxptstsMc, String fxptstsYjxh, String fxptstsScqy, String jsyzyltsPz, String jsyzyltsMc, String jsyzyltsYjxh, String jsyzyltsScqy, String dssadPz, String dssadGgxh, String dssadScqy, String edrPz, String edrGgxh, String edrScqy) {
|
||||
this.id = id;
|
||||
this.createBy = createBy;
|
||||
this.createTime = createTime;
|
||||
this.updateBy = updateBy;
|
||||
this.updateTime = updateTime;
|
||||
this.sysOrgCode = sysOrgCode;
|
||||
this.otaId = otaId;
|
||||
this.wlaqyqPz = wlaqyqPz;
|
||||
this.wlaqyqSl = wlaqyqSl;
|
||||
this.wlaqyqBzwz = wlaqyqBzwz;
|
||||
this.wlaqyqGgxh = wlaqyqGgxh;
|
||||
this.wlaqyqScqy = wlaqyqScqy;
|
||||
this.hmbldPz = hmbldPz;
|
||||
this.hmbldSl = hmbldSl;
|
||||
this.hmbldBzwz = hmbldBzwz;
|
||||
this.hmbldGgxh = hmbldGgxh;
|
||||
this.hmbldScqy = hmbldScqy;
|
||||
this.csbldPz = csbldPz;
|
||||
this.csbldSl = csbldSl;
|
||||
this.csbldBzwz = csbldBzwz;
|
||||
this.csbldGgxh = csbldGgxh;
|
||||
this.csbldScqy = csbldScqy;
|
||||
this.sxthsPz = sxthsPz;
|
||||
this.sxthsSl = sxthsSl;
|
||||
this.sxthsBzwz = sxthsBzwz;
|
||||
this.sxthsGgxh = sxthsGgxh;
|
||||
this.sxthsScqy = sxthsScqy;
|
||||
this.sxtdsdPz = sxtdsdPz;
|
||||
this.sxtdsdSl = sxtdsdSl;
|
||||
this.sxtdsdBzwz = sxtdsdBzwz;
|
||||
this.sxtdsdGgxh = sxtdsdGgxh;
|
||||
this.sxtdsdScqy = sxtdsdScqy;
|
||||
this.jsyjkPz = jsyjkPz;
|
||||
this.jsyjkSl = jsyjkSl;
|
||||
this.jsyjkBzwz = jsyjkBzwz;
|
||||
this.jsyjkGgxh = jsyjkGgxh;
|
||||
this.jsyjkScqy = jsyjkScqy;
|
||||
this.jsyhwPz = jsyhwPz;
|
||||
this.jsyhwSl = jsyhwSl;
|
||||
this.jsyhwBzwz = jsyhwBzwz;
|
||||
this.jsyhwGgxh = jsyhwGgxh;
|
||||
this.jsyhwScqy = jsyhwScqy;
|
||||
this.czwxdwPz = czwxdwPz;
|
||||
this.czwxdwGgxh = czwxdwGgxh;
|
||||
this.czwxdwScqy = czwxdwScqy;
|
||||
this.gxdhPz = gxdhPz;
|
||||
this.gxdhGgxh = gxdhGgxh;
|
||||
this.gxdhScqy = gxdhScqy;
|
||||
this.lsjPz = lsjPz;
|
||||
this.lsjGgxh = lsjGgxh;
|
||||
this.lsjScqy = lsjScqy;
|
||||
this.gjddtPz = gjddtPz;
|
||||
this.gjddtGgxh = gjddtGgxh;
|
||||
this.gjddtScqy = gjddtScqy;
|
||||
this.dzwlPz = dzwlPz;
|
||||
this.dzwlDxxgcs = dzwlDxxgcs;
|
||||
this.cztxPz = cztxPz;
|
||||
this.cztxXtmc = cztxXtmc;
|
||||
this.cztxGgxh = cztxGgxh;
|
||||
this.cztxScqy = cztxScqy;
|
||||
this.cztxBbh = cztxBbh;
|
||||
this.cztxKfqy = cztxKfqy;
|
||||
this.jsfzczjPz = jsfzczjPz;
|
||||
this.jsfzczjMc = jsfzczjMc;
|
||||
this.jsfzczjYjxh = jsfzczjYjxh;
|
||||
this.jsfzczjScqy = jsfzczjScqy;
|
||||
this.jsfzzsqPz = jsfzzsqPz;
|
||||
this.jsfzzsqMc = jsfzzsqMc;
|
||||
this.jsfzzsqYjxh = jsfzzsqYjxh;
|
||||
this.jsfzzsqScqy = jsfzzsqScqy;
|
||||
this.fxptstsPz = fxptstsPz;
|
||||
this.fxptstsMc = fxptstsMc;
|
||||
this.fxptstsYjxh = fxptstsYjxh;
|
||||
this.fxptstsScqy = fxptstsScqy;
|
||||
this.jsyzyltsPz = jsyzyltsPz;
|
||||
this.jsyzyltsMc = jsyzyltsMc;
|
||||
this.jsyzyltsYjxh = jsyzyltsYjxh;
|
||||
this.jsyzyltsScqy = jsyzyltsScqy;
|
||||
this.dssadPz = dssadPz;
|
||||
this.dssadGgxh = dssadGgxh;
|
||||
this.dssadScqy = dssadScqy;
|
||||
this.edrPz = edrPz;
|
||||
this.edrGgxh = edrGgxh;
|
||||
this.edrScqy = edrScqy;
|
||||
}
|
||||
}
|
||||
|
||||
+5
@@ -4,6 +4,7 @@ import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
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 lombok.Data;
|
||||
@@ -84,6 +85,7 @@ public class OtaBaCxKsjjsmccs implements Serializable {
|
||||
/**驾驶自动化级别*/
|
||||
@Excel(name = "驾驶自动化级别", width = 15)
|
||||
@ApiModelProperty(value = "驾驶自动化级别")
|
||||
@Dict(dicCode = "driving_automation_level")
|
||||
private java.lang.String jszdhjb;
|
||||
|
||||
/**升级可能变更的《公告》技术参数*/
|
||||
@@ -141,4 +143,7 @@ public class OtaBaCxKsjjsmccs implements Serializable {
|
||||
@ApiModelProperty(value = "附件")
|
||||
private java.lang.String fj;
|
||||
|
||||
@TableField(exist = false)
|
||||
private java.lang.String dictCode = "driving_automation_level";
|
||||
|
||||
}
|
||||
|
||||
+18
@@ -94,6 +94,7 @@ public class OtaBaCxList implements Serializable {
|
||||
/**备案状态*/
|
||||
@Excel(name = "备案状态", width = 15)
|
||||
@ApiModelProperty(value = "备案状态")
|
||||
@Dict(dicCode = "recordstatus")
|
||||
private java.lang.String bazt;
|
||||
|
||||
/**备案提交时间*/
|
||||
@@ -115,4 +116,21 @@ public class OtaBaCxList implements Serializable {
|
||||
@ApiModelProperty(value = "备注")
|
||||
private java.lang.String bz;
|
||||
|
||||
/**在线升级系统附件*/
|
||||
@Excel(name = "在线升级系统附件", width = 15)
|
||||
@ApiModelProperty(value = "在线升级系统附件")
|
||||
private java.lang.String zxsjxtfj;
|
||||
|
||||
/**在线升级驾驶附件*/
|
||||
@Excel(name = "在线升级驾驶附件", width = 15)
|
||||
@ApiModelProperty(value = "在线升级驾驶附件")
|
||||
private java.lang.String zxsjjsfj;
|
||||
|
||||
public void updateData(OtaBaCxJbxx otaBaCxJbxx){
|
||||
this.cpdjbh = otaBaCxJbxx.getDjbh();
|
||||
this.ggpc = otaBaCxJbxx.getGgpc();
|
||||
this.cpsb = otaBaCxJbxx.getCpsb();
|
||||
this.cpmc = otaBaCxJbxx.getCpmc();
|
||||
this.cpxh = otaBaCxJbxx.getCpxh();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,6 +68,7 @@ public class OtaBaCxLsjl implements Serializable {
|
||||
|
||||
/**数据状态*/
|
||||
@Excel(name = "数据状态", width = 15)
|
||||
@Dict(dicCode = "recordstatus")
|
||||
@ApiModelProperty(value = "数据状态")
|
||||
private java.lang.String sjzt;
|
||||
|
||||
|
||||
+87
@@ -0,0 +1,87 @@
|
||||
package com.jero.modules.ota.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("ota_ba_cx_txjl")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@ApiModel(value="ota_ba_cx_txjl对象", description="车型备案-填写记录表")
|
||||
public class OtaBaCxTxjl implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**主键*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "主键")
|
||||
private String id;
|
||||
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private 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 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 String sysOrgCode;
|
||||
|
||||
/**otaId*/
|
||||
@Excel(name = "otaId", width = 15)
|
||||
@ApiModelProperty(value = "otaId")
|
||||
private String otaId;
|
||||
|
||||
/**模块*/
|
||||
@Excel(name = "模块", width = 15)
|
||||
@ApiModelProperty(value = "模块")
|
||||
private String module;
|
||||
|
||||
/**填写内容*/
|
||||
@Excel(name = "填写内容", width = 15)
|
||||
@ApiModelProperty(value = "填写内容")
|
||||
private String content;
|
||||
|
||||
public OtaBaCxTxjl() {
|
||||
}
|
||||
|
||||
public OtaBaCxTxjl(String otaId, String module, String content) {
|
||||
this.otaId = otaId;
|
||||
this.module = module;
|
||||
this.content = content;
|
||||
}
|
||||
}
|
||||
+6
@@ -3,7 +3,10 @@ package com.jero.modules.ota.entity;
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
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 lombok.Data;
|
||||
@@ -121,4 +124,7 @@ public class OtaBaCxZxsjyq implements Serializable {
|
||||
@ApiModelProperty(value = "证明材料")
|
||||
private java.lang.String zmcl;
|
||||
|
||||
@TableField(exist = false)
|
||||
private List<AttachmentEO> zmclList;
|
||||
|
||||
}
|
||||
|
||||
+79
@@ -0,0 +1,79 @@
|
||||
package com.jero.modules.ota.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 车型升级-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("ota_ba_sj_txjl")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@ApiModel(value="ota_ba_sj_txjl对象", description="车型升级-填写记录表")
|
||||
public class OtaBaSjTxjl implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**主键*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "主键")
|
||||
private String id;
|
||||
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private 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 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 String sysOrgCode;
|
||||
|
||||
/**ota_id*/
|
||||
@Excel(name = "ota_id", width = 15)
|
||||
@ApiModelProperty(value = "ota_id")
|
||||
private String otaId;
|
||||
|
||||
/**模块*/
|
||||
@Excel(name = "模块", width = 15)
|
||||
@ApiModelProperty(value = "模块")
|
||||
private String module;
|
||||
|
||||
/**填写内容*/
|
||||
@Excel(name = "填写内容", width = 15)
|
||||
@ApiModelProperty(value = "填写内容")
|
||||
private String content;
|
||||
|
||||
}
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
package com.jero.modules.ota.enums;
|
||||
|
||||
public enum OtaModuleEnum {
|
||||
|
||||
CX_CXJBXX("车型基本信息", "1","1"),
|
||||
CX_ZXSJYQ("在线升级要求", "1","1"),
|
||||
CX_AQCS("安全措施", "1","1"),
|
||||
CX_KSJDXTMCYCS("可升级的系统名称与参数", "1","1"),
|
||||
CX_KZXSJDJSFZGNMCYCS("可在线升级的驾驶辅助功能名称与参数", "1","1"),
|
||||
CX_JSFZXTJCBACS("驾驶辅助系统基础备案参数", "1","1"),
|
||||
CX_QT("其他", "1","1");
|
||||
|
||||
String name;
|
||||
String nameEN;
|
||||
String value;
|
||||
|
||||
private OtaModuleEnum(String name, String nameEN, String value) {
|
||||
this.name = name;
|
||||
this.nameEN = nameEN;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getNameEN() {
|
||||
return nameEN;
|
||||
}
|
||||
|
||||
public void setNameEN(String nameEN) {
|
||||
this.nameEN = nameEN;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
+249
@@ -0,0 +1,249 @@
|
||||
package com.jero.modules.ota.enums;
|
||||
|
||||
public enum OtaTitleEnum {
|
||||
|
||||
|
||||
CPDJBH("cpdjbh", "产品登记编号", "0"),
|
||||
GGPC("ggpc", "公告批次", "0"),
|
||||
CPSB("cpsb", "产品商标", "0"),
|
||||
CPMC("cpmc", "产品名称", "0"),
|
||||
CPXH("cpxh", "产品型号", "0"),
|
||||
BAZT("bazt", "备案状态", "recordstatus"),
|
||||
BATJSJ("batjsj", "备案提交时间", "0"),
|
||||
CJSJ("cjsj", "创建时间", "0"),
|
||||
BZ("bz", "备注", "0"),
|
||||
|
||||
CXMB("cxmb", "车型模板", "0"),
|
||||
QYMC("qymc", "企业名称", "0"),
|
||||
DJBH("djbh", "产品登记编号", "0"),
|
||||
CPLB("cplb", "产品类别", "0"),
|
||||
DLLX1("dllx1", "车辆动力类型", "0"),
|
||||
DLLX2("dllx2", "车辆动力类型", "0"),
|
||||
TXZD("txzd", "通信终端", "communication_terminal"),
|
||||
CDOTASJ("cdotasj", "车端OTA升级管理系统", "0"),
|
||||
|
||||
BHSJB("bhsjb", "保护升级包", "2"),
|
||||
BHCLBB("bhclbb", "保护车辆版本", "2"),
|
||||
CLGXNL("clgxnl", "车辆更新能力", "2"),
|
||||
CLSJTJ("clsjtj", "车辆升级条件", "2"),
|
||||
CLSJDL("clsjdl", "车辆升级所需电量", "2"),
|
||||
SJBHAQ("sjbhaq", "升级保护车辆安全", "2"),
|
||||
SJANTJ("sjantj", "升级所满足的安全条件", "2"),
|
||||
SJSBAQ("sjsbaq", "升级失败安全状态", "2"),
|
||||
SJGG("sjgg", "升级公告", "2"),
|
||||
SJZT("sjzt", "升级结果状态", "2"),
|
||||
ZMCL("zmcl", "证明材料", "0"),
|
||||
|
||||
BHJZ("bhjz", "保护机制", "protection_mechanism"),
|
||||
FSXJZ("fsxjz", "防失效机制", "fail_safe_mechanism"),
|
||||
SJSBCS("sjsbcs", "升级失败措施", "upgrade_failure"),
|
||||
XXAQJZ("xxaqjz", "信息安全机制", "Information_security_mechanism"),
|
||||
|
||||
XTLB("xtlb", "系统类别", "0"),
|
||||
SFKSJ("sfksj", "是否可升级", "2"),
|
||||
SJBGCS("sjbgcs", "升级变更技术参数", "0"),
|
||||
TPT("tpt", "系统电子控制器架构拓扑图", "0"),
|
||||
KZQMC("kzqmc", "电子控制器名称", "0"),
|
||||
AQWZXDJ("aqwzxdj", "安全完整性等级", "0"),
|
||||
KZQSCQY("kzqscqy", "电子控制器生产企业", "0"),
|
||||
KZQXH("kzqxh", "电子控制器型号", "0"),
|
||||
YJBBXX("yjbbxx", "硬件版本信息", "0"),
|
||||
CSRJBBH("csrjbbh", "初始软件版本号", "0"),
|
||||
CSRJBWZSJ("csrjbwzsj", "初始软件包完整数据", "0"),
|
||||
SJSFYX("sjsfyx", "升级是否影响整车安全、节能、环保、防盗等", "0"),
|
||||
CZXTLX("czxtlx", "操作系统类型", "0"),
|
||||
CZXTSCQY("czxtscqy", "操作系统生产企业", "0"),
|
||||
CZXTBBH("czxtbbh", "操作系统版本号", "0"),
|
||||
|
||||
GNMC("gnmc", "功能名称", "0"),
|
||||
PZQK("pzqk", "配置情况", "2"),
|
||||
JSZDHJB("jszdhjb", "驾驶自动化级别", "driving_automation_level"),
|
||||
SJGGCS("sjggcs", "升级可能变更的《公告》技术参数", "0"),
|
||||
GNMS("gnms", "功能描述", "0"),
|
||||
SYTJ("sytj", "适用条件", "0"),
|
||||
RJKFQY("rjkfqy", "软件开发企业", "0"),
|
||||
CSYZSJ("csyzsj", "初始软件包的完整性验证数据", "0"),
|
||||
FJ("fj", "附件", "0"),
|
||||
|
||||
WLAQYQ_PZ("wlaqyqPz", "网络安全要求配置", "2"),
|
||||
WLAQYQ_SL("wlaqyqSl", "网络安全要求数量", "0"),
|
||||
WLAQYQ_BZWZ("wlaqyqBzwz", "网络安全要求布置位置", "0"),
|
||||
WLAQYQ_GGXH("wlaqyqGgxh", "网络安全要求规格型号", "0"),
|
||||
WLAQYQ_SCQY("wlaqyqScqy", "网络安全要求生产企业", "0"),
|
||||
HMBLD_PZ("hmbldPz", "毫米波雷达配置", "2"),
|
||||
HMBLD_SL("hmbldSl", "毫米波雷达数量", "0"),
|
||||
HMBLD_BZWZ("hmbldBzwz", "毫米波雷达布置位置", "0"),
|
||||
HMBLD_GGXH("hmbldGgxh", "毫米波雷达规格型号", "0"),
|
||||
HMBLD_SCQY("hmbldScqy", "毫米波雷达生产企业", "0"),
|
||||
CSBLD_PZ("csbldPz", "超声波雷达配置", "2"),
|
||||
CSBLD_SL("csbldSl", "超声波雷达数量", "0"),
|
||||
CSBLD_BZWZ("csbldBzwz", "超声波雷达布置位置", "0"),
|
||||
CSBLD_GGXH("csbldGgxh", "超声波雷达规格型号", "0"),
|
||||
CSBLD_SCQY("csbldScqy", "超声波雷达生产企业", "0"),
|
||||
SXTHS_PZ("sxthsPz", "摄像头倒车影像/(环视)配置", "2"),
|
||||
SXTHS_SL("sxthsSl", "摄像头倒车影像/(环视)数量", "0"),
|
||||
SXTHS_BZWZ("sxthsBzwz", "摄像头倒车影像/(环视)布置位置", "0"),
|
||||
SXTHS_GGXH("sxthsGgxh", "摄像头倒车影像/(环视)规格型号", "0"),
|
||||
SXTHS_SCQY("sxthsScqy", "摄像头倒车影像/(环视)生产企业", "0"),
|
||||
SXTDSD_PZ("sxtdsdPz", "摄像头单双多目配置", "2"),
|
||||
SXTDSD_SL("sxtdsdSl", "摄像头单双多目数量", "0"),
|
||||
SXTDSD_BZWZ("sxtdsdBzwz", "摄像头单双多目布置位置", "0"),
|
||||
SXTDSD_GGXH("sxtdsdGgxh", "摄像头单双多目规格型号", "0"),
|
||||
SXTDSD_SCQY("sxtdsdScqy", "摄像头单双多目生产企业", "0"),
|
||||
JSYJK_PZ("jsyjkPz", "驾驶员监控摄像头配置", "2"),
|
||||
JSYJK_SL("jsyjkSl", "驾驶员监控摄像头数量", "0"),
|
||||
JSYJK_BZWZ("jsyjkBzwz", "驾驶员监控摄像头布置位置", "0"),
|
||||
JSYJK_GGXH("jsyjkGgxh", "驾驶员监控摄像头规格型号", "0"),
|
||||
JSYJK_SCQY("jsyjkScqy", "驾驶员监控摄像头生产企业", "0"),
|
||||
JSYHW_PZ("jsyhwPz", "驾驶员监控红外传感器配置", "2"),
|
||||
JSYHW_SL("jsyhwSl", "驾驶员监控红外传感器数量", "0"),
|
||||
JSYHW_BZWZ("jsyhwBzwz", "驾驶员监控红外传感器布置位置", "0"),
|
||||
JSYHW_GGXH("jsyhwGgxh", "驾驶员监控红外传感器规格型号", "0"),
|
||||
JSYHW_SCQY("jsyhwScqy", "驾驶员监控红外传感器生产企业", "0"),
|
||||
CZWXDW_PZ("czwxdwPz", "车载卫星定位设备配置", "2"),
|
||||
CZWXDW_GGXH("czwxdwGgxh", "车载卫星定位设备规格型号", "0"),
|
||||
CZWXDW_SCQY("czwxdwScqy", "车载卫星定位设备生产企业", "0"),
|
||||
GXDH_PZ("gxdhPz", "惯性导航系统配置", "2"),
|
||||
GXDH_GGXH("gxdhGgxh", "惯性导航系统规格型号", "0"),
|
||||
GXDH_SCQY("gxdhScqy", "惯性导航系统生产企业", "0"),
|
||||
LSJ_PZ("lsjPz", "轮速计配置", "2"),
|
||||
LSJ_GGXH("lsjGgxh", "轮速计规格型号", "0"),
|
||||
LSJ_SCQY("lsjScqy", "轮速计生产企业", "0"),
|
||||
GJDDT_PZ("gjddtPz", "高精度地图配置", "2"),
|
||||
GJDDT_GGXH("gjddtGgxh", "高精度地图规格型号", "0"),
|
||||
GJDDT_SCQY("gjddtScqy", "高精度地图生产企业", "0"),
|
||||
DZWL_PZ("dzwlPz", "电子围栏配置", "2"),
|
||||
DZWL_DXXGCS("dzwlDxxgcs", "电子围栏", "0"),
|
||||
CZTX_PZ("cztxPz", "车载通信系统配置", "2"),
|
||||
CZTX_XTMC("cztx_xtmc", "车载通信系统系统名称", "0"),
|
||||
CZTX_GGXH("cztxGgxh", "车载通信系统规格型号", "0"),
|
||||
CZTX_SCQY("cztxScqy", "车载通信系统生产企业", "0"),
|
||||
CZTX_BBH("cztxBbh", "车载通信系统版本号", "0"),
|
||||
CZTX_KFQY("cztx_kfqy", "车载通信系统软件开发企业", "0"),
|
||||
JSFZCZJ_PZ("jsfzczjPz", "驾驶辅助功能操纵件配置", "2"),
|
||||
JSFZCZJ_MC("jsfzczjMc", "驾驶辅助功能操纵件名称", "0"),
|
||||
JSFZCZJ_YJXH("jsfzczjYjxh", "驾驶辅助功能操纵件硬件规格型号", "0"),
|
||||
JSFZCZJ_SCQY("jsfzczjScqy", "驾驶辅助功能操纵件生产企业", "0"),
|
||||
JSFZZSQ_PZ("jsfzzsqPz", "驾驶辅助功能指示器配置", "2"),
|
||||
JSFZZSQ_MC("jsfzzsqMc", "驾驶辅助功能指示器名称", "0"),
|
||||
JSFZZSQ_YJXH("jsfzzsqYjxh", "驾驶辅助功能指示器硬件规格型号", "0"),
|
||||
JSFZZSQ_SCQY("jsfzzsqScqy", "驾驶辅助功能指示器生产企业", "0"),
|
||||
FXPTSTS_PZ("fxptstsPz", "方向盘脱手提示器配置", "2"),
|
||||
FXPTSTS_MC("fxptstsMc", "方向盘脱手提示器名称", "0"),
|
||||
FXPTSTS_YJXH("fxptstsYjxh", "方向盘脱手提示器硬件规格型号", "0"),
|
||||
FXPTSTS_SCQY("fxptstsScqy", "方向盘脱手提示器生产企业", "0"),
|
||||
JSYZYLTS_PZ("jsyzyltsPz", "驾驶员注意力提醒指示器配置", "2"),
|
||||
JSYZYLTS_MC("jsyzyltsMc", "驾驶员注意力提醒指示器名称", "0"),
|
||||
JSYZYLTS_YJXH("jsyzyltsYjxh", "驾驶员注意力提醒指示器硬件规格型号", "0"),
|
||||
JSYZYLTS_SCQY("jsyzyltsScqy", "驾驶员注意力提醒指示器生产企业", "0"),
|
||||
DSSAD_PZ("dssadPz", "自动驾驶数据记录系统配置", "2"),
|
||||
DSSAD_GGXH("dssadGgxh", "自动驾驶数据记录系统规格型号", "0"),
|
||||
DSSAD_SCQY("dssadScqy", "自动驾驶数据记录系统生产企业", "0"),
|
||||
EDR_PZ("edrPz", "事件数据记录系统配置", "2"),
|
||||
EDR_GGXH("edrGgxh", "事件数据记录系统规格型号", "0"),
|
||||
EDR_SCQY("edrScqy", "事件数据记录系统生产企业", "0"),
|
||||
|
||||
BJMC("bjmc", "部件名称", "0"),
|
||||
YJGGXH("yjggxh", "硬件规格型号", "0"),
|
||||
YJSCQY("yjscqy", "硬件生产企业", "0"),
|
||||
RJBB("rjbb", "软件版本", "0"),
|
||||
BZWZ("bzwz", "布置位置", "0"),
|
||||
|
||||
SJBBHCS("sjbbhcs", "升级包保护措施", "0"),
|
||||
BABH("babh", "备案编号", "0"),
|
||||
BAPC("bapc", "备案批次", "0"),
|
||||
ZSL("zsl", "总数量", "0"),
|
||||
SCRQKS("scrqks", "生产日期开始", "0"),
|
||||
SCRQJS("scrqjs", "生产日期结束", "0"),
|
||||
VIN_LIST("vinList", "VIN码清单", "0"),
|
||||
SJMD("sjmd", "升级目的", "0"),
|
||||
SFBGCS("sfbgcs", "是否变更对应车型的《公告》技术参数", "0"),
|
||||
JSXNBH("jsxnbh", "是否涉及性能变化", "0"),
|
||||
FHGD("fhgd", "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", "0"),
|
||||
ZDJSXG("zdjsxg", "是否涉及汽车自动驾驶功能相关升级", "0"),
|
||||
JRXXG("jrxxg", "兼容性评估相关", "0"),
|
||||
ZXSJ("zxsj", "如何执行升级", "0"),
|
||||
AQJZ("aqjz", "升级失败或中断后,车辆采取的安全机制", "0"),
|
||||
SFYXAQ("sfyxaq", "升级活动是否影响车辆安全", "0"),
|
||||
YHQR("yhqr", "升级活动是否提供用户确认选项", "0"),
|
||||
SJBCS("sjbcs", "升级包测试", "0"),
|
||||
AQKKX("aqkkx", "是杏已验证确认在线升级活动的安全性和可靠性", "0"),
|
||||
BGFJ("bgfj", "提供变更或扩展后的《公告》批次及证明材料", "0"),
|
||||
CLFJ("clfj", "提供证明材料", "0"),
|
||||
XTMC("xtmc", "系统名称", "0"),
|
||||
SJQBGCS("sjqbgcs", "升级前已变更《公告》参数的对应调整", "0"),
|
||||
SJHBGCS("sjhbgcs", "升级后已变更《公告》参数的对应调整", "0"),
|
||||
SJKZQMC("sjkzqmc", "升级的电子控制器名称", "0"),
|
||||
YJBB("yjbb", "适配的硬件版本", "0"),
|
||||
SJQRJBB("sjqrjbb", "软件版本号升级前", "0"),
|
||||
SJHRJBB("sjhrjbb", "软件版本号升级后", "0"),
|
||||
SJQCZXT("sjqczxt", "操作系统版本号升级前", "0"),
|
||||
SJHCZXT("sjhczxt", "操作系统版本号升级后", "0"),
|
||||
CSRJSJ("csrjsj", "初始软件包的完整性数据", "0"),
|
||||
SJBYZSJ("sjbyzsj", "升级包完整性验证数据", "0"),
|
||||
SJBDX("sjbdx", "升级包大小", "0"),
|
||||
SFCFSJ("sfcfsj", "是否差分升级", "0"),
|
||||
SJMDLX("sjmdlx", "升级目的类型", "0"),
|
||||
GNBGMS("gnbgms", "功能变更描述", "0"),
|
||||
SYTJBG("sytjbg", "适用条件变更", "0"),
|
||||
SJSJKZQ("sjsjkzq", "升级涉及的电子控制器", "0"),
|
||||
GXBH("gxbh", "由于软件升级活动而导致的车辆功能的任何变化", "0"),
|
||||
SJSJ("sjsj", "升级执行预计时间(分钟)", "0"),
|
||||
SJKY("sjky", "升级执行期问,车辆是否可用", "0"),
|
||||
SJBKYGN("sjbkygn", "升级执行期间不可用的车辆功能", "0"),
|
||||
ZDXX("zdxx", "帮助车辆用户安全执行升级的任何指导信息", "0"),
|
||||
SJSFCG("sjsfcg", "告知用户升级成功或失败", "0"),
|
||||
GZBG("gzbg", "告知实施的变更", "0"),
|
||||
GZSCNR("gzscnr", "告知了对用户手册的全部更新内容", "0"),
|
||||
GZYHFS("gzyhfs", "告知用户方式(可多选)", "0"),
|
||||
XGWJ("xgwj", "用户告知相关文件", "0"),
|
||||
RWMC("rwmc", "任务名称", "0"),
|
||||
SJFBSJ("sjfbsj", "升级发布时间", "0"),
|
||||
SJJZSJ("sjjzsj", "升级计划截止时间", "0");
|
||||
|
||||
String name;
|
||||
String value;
|
||||
|
||||
//0为不处理。1为数据字典2为处理是否 是1 否2
|
||||
String type;
|
||||
|
||||
OtaTitleEnum(String name, String value, String type) {
|
||||
this.name = name;
|
||||
this.value = value;
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public static OtaTitleEnum getOtaTitleEnum(String name) {
|
||||
for (OtaTitleEnum e : values()) {
|
||||
if (e.getName().equals(name)) {
|
||||
return e;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
package com.jero.modules.ota.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface OtaBaCxTxjlMapper extends BaseMapper<OtaBaCxTxjl> {
|
||||
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
package com.jero.modules.ota.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.jero.modules.ota.entity.OtaBaSjTxjl;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* @Description: 车型升级-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface OtaBaSjTxjlMapper extends BaseMapper<OtaBaSjTxjl> {
|
||||
|
||||
}
|
||||
+2
@@ -18,5 +18,7 @@
|
||||
<result column="batjsj" property="batjsj" />
|
||||
<result column="cjsj" property="cjsj" />
|
||||
<result column="bz" property="bz" />
|
||||
<result column="zxsjxtfj" property="zxsjxtfj" />
|
||||
<result column="zxsjjsfj" property="zxsjjsfj" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
<?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.OtaBaCxTxjlMapper">
|
||||
<resultMap id="OtaBaCxTxjlResultMap" type="com.jero.modules.ota.entity.OtaBaCxTxjl">
|
||||
<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="ota_id" property="otaId" />
|
||||
<result column="module" property="module" />
|
||||
<result column="content" property="content" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
<?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.OtaBaSjTxjlMapper">
|
||||
<resultMap id="OtaBaSjTxjlResultMap" type="com.jero.modules.ota.entity.OtaBaSjTxjl">
|
||||
<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="ota_id" property="otaId" />
|
||||
<result column="module" property="module" />
|
||||
<result column="content" property="content" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
+45
-35
@@ -2,60 +2,70 @@ package com.jero.modules.ota.service;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxAqcs;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-安全措施
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxAqcsService extends IService<OtaBaCxAqcs> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxAqcs otaBaCxAqcs);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxAqcs otaBaCxAqcs);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxAqcs queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxAqcs> queryList();
|
||||
|
||||
OtaBaCxAqcs queryByOtaId(String otaId, String otaIdT);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
OtaBaCxAqcs importData(MultipartFile file, String otaId, String cut) throws Exception;
|
||||
}
|
||||
|
||||
+46
-36
@@ -2,60 +2,70 @@ package com.jero.modules.ota.service;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxJbxx;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-车型基本信息
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxJbxxService extends IService<OtaBaCxJbxx> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxJbxx otaBaCxJbxx);
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxJbxx add(OtaBaCxJbxx otaBaCxJbxx);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxJbxx otaBaCxJbxx);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxJbxx queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxJbxx> queryList();
|
||||
|
||||
OtaBaCxJbxx queryByOtaId(String otaId, String otaIdT);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception;
|
||||
|
||||
OtaBaCxJbxx importData(MultipartFile file, String otaId, String cut) throws Exception;
|
||||
}
|
||||
|
||||
+46
-36
@@ -1,61 +1,71 @@
|
||||
package com.jero.modules.ota.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.modules.ota.entity.OtaBaCxJsfzbacs;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-驾驶辅助系统基础备案参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxJsfzbacsService extends IService<OtaBaCxJsfzbacs> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxJsfzbacs otaBaCxJsfzbacs);
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
void add(JSONObject json);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxJsfzbacs otaBaCxJsfzbacs);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxJsfzbacs queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxJsfzbacs> queryList();
|
||||
|
||||
JSONObject queryByOtaId(String otaId, String otaIdT);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
void importData(MultipartFile file, String otaId, String cut) throws Exception;
|
||||
}
|
||||
|
||||
+46
-36
@@ -1,61 +1,71 @@
|
||||
package com.jero.modules.ota.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjjsmccs;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-可在线升级的驾驶辅助功能名称与参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxKsjjsmccsService extends IService<OtaBaCxKsjjsmccs> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxKsjjsmccs otaBaCxKsjjsmccs);
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
void add(JSONObject json);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxKsjjsmccs otaBaCxKsjjsmccs);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxKsjjsmccs queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxKsjjsmccs> queryList();
|
||||
|
||||
JSONObject queryByOtaId(String otaId, String otaIdT);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
void importData(MultipartFile file, String otaId, String cut) throws Exception;
|
||||
}
|
||||
|
||||
+46
-36
@@ -1,61 +1,71 @@
|
||||
package com.jero.modules.ota.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjxtmccs;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-可升级的系统名称参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxKsjxtmccsService extends IService<OtaBaCxKsjxtmccs> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxKsjxtmccs otaBaCxKsjxtmccs);
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
void add(JSONObject json);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxKsjxtmccs otaBaCxKsjxtmccs);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxKsjxtmccs queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxKsjxtmccs> queryList();
|
||||
|
||||
JSONObject queryByOtaId(String otaId, String otaIdT);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
void importData(MultipartFile file, String otaId, String cut) throws Exception;
|
||||
}
|
||||
|
||||
+10
-3
@@ -2,7 +2,10 @@ package com.jero.modules.ota.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.ota.entity.OtaBaCxList;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -55,14 +58,18 @@ public interface IOtaBaCxListService extends IService<OtaBaCxList> {
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxList> queryList();
|
||||
|
||||
/**
|
||||
* 备案维护
|
||||
*
|
||||
*/
|
||||
void batchRecord(String ids, String bazt, String batjsj, String bz, String cut);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
void importData(MultipartFile file, String cut);
|
||||
|
||||
void exportData(String otaId, HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
}
|
||||
|
||||
+2
@@ -58,4 +58,6 @@ public interface IOtaBaCxLsjlService extends IService<OtaBaCxLsjl> {
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxLsjl> queryList();
|
||||
|
||||
List<OtaBaCxLsjl> queryByOtaId(String otaId);
|
||||
}
|
||||
|
||||
+38
-35
@@ -2,60 +2,63 @@ package com.jero.modules.ota.service;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxQt;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-其他升级信息
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxQtService extends IService<OtaBaCxQt> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxQt otaBaCxQt);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxQt otaBaCxQt);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxQt queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxQt> queryList();
|
||||
|
||||
OtaBaCxQt queryByOtaId(String otaId, String otaIdT);
|
||||
}
|
||||
|
||||
+4
@@ -52,6 +52,10 @@ public interface IOtaBaCxSjmkService extends IService<OtaBaCxSjmk> {
|
||||
*/
|
||||
OtaBaCxSjmk queryById(String id);
|
||||
|
||||
|
||||
List<OtaBaCxSjmk> queryByOtaId(String otaId);
|
||||
|
||||
void deleteByOtaId(String otaId);
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
package com.jero.modules.ota.service;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import org.apache.poi.ss.formula.functions.T;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxTxjlService extends IService<OtaBaCxTxjl> {
|
||||
|
||||
public void addHistory(OtaModuleEnum otaModuleEnum, String title, String oldStr, String newStr);
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxTxjl otaBaCxTxjl);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxTxjl otaBaCxTxjl);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxTxjl queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxTxjl> queryList();
|
||||
|
||||
List<OtaBaCxTxjl> queryByOtaId(String otaId);
|
||||
}
|
||||
+46
-35
@@ -1,61 +1,72 @@
|
||||
package com.jero.modules.ota.service;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxJbxx;
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-在线升级要求
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaCxZxsjyqService extends IService<OtaBaCxZxsjyq> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaCxZxsjyq otaBaCxZxsjyq);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaCxZxsjyq otaBaCxZxsjyq);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaCxZxsjyq queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaCxZxsjyq> queryList();
|
||||
|
||||
OtaBaCxZxsjyq queryByOtaId(String otaId, String otaIdT);
|
||||
|
||||
void exportTemplate(HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
OtaBaCxZxsjyq importData(MultipartFile file, String otaId, String cut) throws Exception;
|
||||
}
|
||||
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
package com.jero.modules.ota.service;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaSjTxjl;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型升级-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IOtaBaSjTxjlService extends IService<OtaBaSjTxjl> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @return
|
||||
*/
|
||||
void add(OtaBaSjTxjl otaBaSjTxjl);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @return
|
||||
*/
|
||||
void editById(OtaBaSjTxjl otaBaSjTxjl);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
OtaBaSjTxjl queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OtaBaSjTxjl> queryList();
|
||||
}
|
||||
+175
-47
@@ -1,89 +1,217 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxAqcs;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.*;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxAqcsMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxAqcsService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-安全措施
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxAqcsServiceImpl extends ServiceImpl<OtaBaCxAqcsMapper, OtaBaCxAqcs> implements IOtaBaCxAqcsService {
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxAqcs otaBaCxAqcs) {
|
||||
Date now = new Date();
|
||||
otaBaCxAqcs.setCreateTime(now);
|
||||
otaBaCxAqcs.setUpdateTime(now);
|
||||
save(otaBaCxAqcs);
|
||||
if (null != otaBaCxAqcs) {
|
||||
OtaBaCxAqcs otaBaCxAqcsOld = this.getByOtaId(otaBaCxAqcs.getOtaId());
|
||||
if (null != otaBaCxAqcsOld) {
|
||||
otaBaCxAqcs.setId(otaBaCxAqcsOld.getId());
|
||||
} else {
|
||||
otaBaCxAqcs.setCreateTime(now);
|
||||
}
|
||||
otaBaCxAqcs.setUpdateTime(now);
|
||||
if (null != otaBaCxAqcs.getZmclList() && otaBaCxAqcs.getZmclList().size() > 0) {
|
||||
JSONArray obj = new JSONArray();
|
||||
for (AttachmentEO aeo : otaBaCxAqcs.getZmclList()) {
|
||||
obj.add(aeo);
|
||||
}
|
||||
otaBaCxAqcs.setZmcl(obj.toString());
|
||||
}
|
||||
saveOrUpdate(otaBaCxAqcs);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
if (ObjectUtils.isEmpty(otaBaCxAqcsOld)) {
|
||||
otaBaCxAqcsOld = new OtaBaCxAqcs();
|
||||
}
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaCxAqcsOld.getOtaId(), OtaModuleEnum.CX_AQCS, otaBaCxAqcsOld, otaBaCxAqcs, sysDictService);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxAqcs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxAqcs otaBaCxAqcs) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxAqcs.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxAqcs);
|
||||
saveOrUpdate(otaBaCxAqcs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxAqcs queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxAqcs> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxAqcs queryByOtaId(String otaId, String otaIdT) {
|
||||
OtaBaCxAqcs res = getByOtaId(otaId);
|
||||
if (ObjectUtils.isEmpty(res)) {
|
||||
res = getByOtaId(otaIdT);
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(res) && StringUtils.isNotEmpty(res.getZmcl())) {
|
||||
List<AttachmentEO> aeoList = JSONArray.parseArray(res.getZmcl(), AttachmentEO.class);
|
||||
res.setZmclList(aeoList);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
private OtaBaCxAqcs getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxAqcs> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxAqcs::getOtaId, otaId);
|
||||
return this.getOne(queryWrapper, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "安全措施.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxAqcs importData(MultipartFile file, String otaId, String cut) throws Exception {
|
||||
List<File> upLoadFiles = ImportFileUtil.importZip(file, cut, uploadPath);
|
||||
File attFile = null;
|
||||
File upFile = null;
|
||||
for (File f : upLoadFiles) {
|
||||
if (f.isDirectory() && f.getName().equals("安全措施")) {
|
||||
attFile = f;
|
||||
} else if (f.getName().equals("安全措施.xlsx")) {
|
||||
upFile = f;
|
||||
}
|
||||
}
|
||||
if (null == upFile || null == attFile) {
|
||||
throw new JeroBootException("请上传正确的文件");
|
||||
}
|
||||
OtaBaCxAqcs aqcs = parseFile(upFile, cut);
|
||||
aqcs.setOtaId(otaId);
|
||||
add(aqcs);
|
||||
return aqcs;
|
||||
}
|
||||
|
||||
private OtaBaCxAqcs parseFile(File upFile, String cut) throws Exception {
|
||||
OtaBaCxAqcs aqcs = new OtaBaCxAqcs();
|
||||
Workbook wb = ImportFileUtil.readExcel(upFile);
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
|
||||
Row row = s.getRow(2);
|
||||
Cell cell = row.getCell(2);
|
||||
aqcs.setBhjz(ImportFileUtil.getCellValueDict(cell, wb, "protection_mechanism", sysDictService, cut));
|
||||
|
||||
row = s.getRow(3);
|
||||
cell = row.getCell(2);
|
||||
aqcs.setFsxjz(ImportFileUtil.getCellValueDict(cell, wb, "fail_safe_mechanism", sysDictService, cut));
|
||||
|
||||
row = s.getRow(4);
|
||||
cell = row.getCell(2);
|
||||
aqcs.setSjsbcs(ImportFileUtil.getCellValueDict(cell, wb, "upgrade_failure", sysDictService, cut));
|
||||
|
||||
row = s.getRow(5);
|
||||
cell = row.getCell(2);
|
||||
aqcs.setXxaqjz(ImportFileUtil.getCellValueDict(cell, wb, "Information_security_mechanism", sysDictService, cut));
|
||||
|
||||
row = s.getRow(2);
|
||||
cell = row.getCell(3);
|
||||
aqcs.setZmcl(ImportFileUtil.getCellValue(cell, wb));
|
||||
|
||||
return aqcs;
|
||||
}
|
||||
}
|
||||
|
||||
+192
-48
@@ -1,89 +1,233 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.aliyuncs.utils.IOUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.OtaBaCxJbxx;
|
||||
import com.jero.modules.ota.entity.OtaBaCxList;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxJbxxMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxJbxxService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxListService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||
import org.apache.poi.ss.usermodel.*;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.*;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-车型基本信息
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBaCxJbxx> implements IOtaBaCxJbxxService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxJbxx otaBaCxJbxx) {
|
||||
@Autowired
|
||||
private IOtaBaCxListService otaBaCxListService;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
public OtaBaCxJbxx add(OtaBaCxJbxx otaBaCxJbxx) {
|
||||
//对比填写记录用的
|
||||
OtaBaCxJbxx OtaBaCxJbxxOld = new OtaBaCxJbxx();
|
||||
Date now = new Date();
|
||||
otaBaCxJbxx.setCreateTime(now);
|
||||
OtaBaCxList otaBaCxList;
|
||||
if (StringUtils.isEmpty(otaBaCxJbxx.getOtaId())) {
|
||||
//在保存的时候设置一个id 并返回前端 下次保存的时候判断是否为更新
|
||||
otaBaCxList = new OtaBaCxList();
|
||||
otaBaCxList.setId(UUID.randomUUID().toString().replace("-", ""));
|
||||
otaBaCxList.updateData(otaBaCxJbxx);
|
||||
otaBaCxListService.add(otaBaCxList);
|
||||
otaBaCxJbxx.setOtaId(otaBaCxList.getId());
|
||||
otaBaCxJbxx.setCreateTime(now);
|
||||
} else {
|
||||
OtaBaCxJbxxOld = this.getByOtaId(otaBaCxJbxx.getOtaId());
|
||||
otaBaCxList = otaBaCxListService.queryById(otaBaCxJbxx.getOtaId());
|
||||
otaBaCxList.updateData(otaBaCxJbxx);
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
}
|
||||
otaBaCxJbxx.setUpdateTime(now);
|
||||
save(otaBaCxJbxx);
|
||||
saveOrUpdate(otaBaCxJbxx);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaCxJbxx.getOtaId(), OtaModuleEnum.CX_CXJBXX, OtaBaCxJbxxOld, otaBaCxJbxx, sysDictService);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
return otaBaCxJbxx;
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJbxx
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxJbxx otaBaCxJbxx) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxJbxx.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxJbxx);
|
||||
saveOrUpdate(otaBaCxJbxx);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxJbxx queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxJbxx> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxJbxx queryByOtaId(String otaId, String otaIdT) {
|
||||
//判断是否保存过,否则查询模版数据回显
|
||||
OtaBaCxJbxx res = getByOtaId(otaId);
|
||||
if (ObjectUtils.isEmpty(res)) {
|
||||
res = getByOtaId(otaIdT);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
private OtaBaCxJbxx getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxJbxx> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxJbxx::getOtaId, otaId);
|
||||
return this.getOne(queryWrapper, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "车型基本信息.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxJbxx importData(MultipartFile file, String otaId, String cut) throws Exception {
|
||||
List<File> upLoadFiles = ImportFileUtil.importZip(file, cut, uploadPath);
|
||||
File upFile = null;
|
||||
for (File f : upLoadFiles) {
|
||||
if (f.getName().equals("可在线升级的系统名称与参数.xlsx")) {
|
||||
upFile = f;
|
||||
}
|
||||
}
|
||||
if (null == upFile) {
|
||||
throw new JeroBootException("请上传正确的文件");
|
||||
}
|
||||
OtaBaCxJbxx jbxx = parseFile(upFile, cut);
|
||||
jbxx.setOtaId(otaId);
|
||||
return add(jbxx);
|
||||
}
|
||||
|
||||
private OtaBaCxJbxx parseFile(File file, String cut) throws Exception {
|
||||
OtaBaCxJbxx jbxx = new OtaBaCxJbxx();
|
||||
Workbook wb = ImportFileUtil.readExcel(file);
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
|
||||
Row row = s.getRow(1);
|
||||
Cell cell = row.getCell(1);
|
||||
jbxx.setQymc(ImportFileUtil.getCellValue(cell, wb));
|
||||
|
||||
row = s.getRow(2);
|
||||
cell = row.getCell(1);
|
||||
String cpbh = ImportFileUtil.getCellValue(cell, wb);
|
||||
if (StringUtils.isEmpty(cpbh)) {
|
||||
throw new JeroBootException("产品编号不能为空");
|
||||
}
|
||||
jbxx.setDjbh(cpbh);
|
||||
row = s.getRow(3);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setCplb(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(4);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setGgpc(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(5);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setCpsb(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(6);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setCpmc(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(7);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setCpxh(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(8);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setDllx1(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(9);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setDllx2(ImportFileUtil.getCellValue(cell, wb));
|
||||
row = s.getRow(10);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setTxzd(ImportFileUtil.getCellValueDict(cell, wb, "communication_terminal", sysDictService, cut));
|
||||
row = s.getRow(11);
|
||||
cell = row.getCell(1);
|
||||
jbxx.setCdotasj(ImportFileUtil.getCellValue(cell, wb));
|
||||
return jbxx;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
+224
-48
@@ -1,89 +1,265 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.OtaBaCxJsfzbacs;
|
||||
import com.jero.modules.ota.entity.OtaBaCxSjmk;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.enums.OtaTitleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxJsfzbacsMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxJsfzbacsService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxSjmkService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.File;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-驾驶辅助系统基础备案参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxJsfzbacsServiceImpl extends ServiceImpl<OtaBaCxJsfzbacsMapper, OtaBaCxJsfzbacs> implements IOtaBaCxJsfzbacsService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxSjmkService OtaBaCxSjmkService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*/
|
||||
@Override
|
||||
public void add(JSONObject json) {
|
||||
OtaBaCxJsfzbacs otaBaCxJsfzbacs = new OtaBaCxJsfzbacs();
|
||||
String otaId = json.getString("otaId");
|
||||
OtaBaCxJsfzbacs otaBaCxJsfzbacsOld = this.getByOtaId(otaId);
|
||||
otaBaCxJsfzbacs.setOtaId(otaId);
|
||||
parseBjData(json, otaBaCxJsfzbacs);
|
||||
Date now = new Date();
|
||||
otaBaCxJsfzbacs.setCreateTime(now);
|
||||
otaBaCxJsfzbacs.setUpdateTime(now);
|
||||
save(otaBaCxJsfzbacs);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
if (ObjectUtils.isEmpty(otaBaCxJsfzbacsOld)) {
|
||||
otaBaCxJsfzbacsOld = new OtaBaCxJsfzbacs();
|
||||
}
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaId, OtaModuleEnum.CX_JSFZXTJCBACS, otaBaCxJsfzbacsOld, otaBaCxJsfzbacs, sysDictService);
|
||||
saveOrUpdate(otaBaCxJsfzbacs);
|
||||
//处理控制器列表,先删除,后添加
|
||||
List<OtaBaCxSjmk> oldList = OtaBaCxSjmkService.queryByOtaId(otaId);
|
||||
OtaBaCxSjmkService.deleteByOtaId(otaId);
|
||||
JSONArray kzq = json.getJSONArray("kzq");
|
||||
List<OtaBaCxSjmk> sjmkList = parseKzqData(kzq, otaId);
|
||||
reList.addAll(cu.comparisonListRecord(otaId, OtaModuleEnum.CX_JSFZXTJCBACS, OtaTitleEnum.BJMC.getName(), oldList, sjmkList, sysDictService));
|
||||
OtaBaCxSjmkService.saveOrUpdateBatch(sjmkList);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
|
||||
/**
|
||||
* 解析控制器数据
|
||||
*/
|
||||
private List<OtaBaCxSjmk> parseKzqData(JSONArray kzq, String otaId) {
|
||||
List<OtaBaCxSjmk> sjmkList = new ArrayList<>();
|
||||
for (Object kzqJson : kzq) {
|
||||
HashMap<String, Object> kzqMap = (HashMap<String, Object>) kzqJson;
|
||||
Field[] fields = OtaBaCxSjmk.class.getDeclaredFields();
|
||||
OtaBaCxSjmk sjmk = new OtaBaCxSjmk();
|
||||
sjmk.setOtaId(otaId);
|
||||
for (Field field : fields) {
|
||||
if (field.getName().equals("createTime") || field.getName().equals("updateTime")) {
|
||||
continue;
|
||||
}
|
||||
Object kzqObj = kzqMap.get(field.getName());
|
||||
if (null != kzqObj) {
|
||||
try {
|
||||
field.setAccessible(true);
|
||||
field.set(sjmk, kzqObj.toString());
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
sjmkList.add(sjmk);
|
||||
}
|
||||
return sjmkList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 解析部件数据
|
||||
*/
|
||||
private void parseBjData(JSONObject json, OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
JSONObject bj = json.getJSONObject("bj");
|
||||
if (ObjectUtils.isNotEmpty(bj)) {
|
||||
Map<String, Object> bjMap = bj.getInnerMap();
|
||||
Field[] fields = OtaBaCxJsfzbacs.class.getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
if (field.getName().equals("createTime") || field.getName().equals("updateTime")) {
|
||||
continue;
|
||||
}
|
||||
Object bjObj = bjMap.get(field.getName());
|
||||
if (null != bjObj) {
|
||||
try {
|
||||
field.setAccessible(true);
|
||||
field.set(otaBaCxJsfzbacs, bjObj.toString());
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
JSONArray cs = json.getJSONArray("cs");
|
||||
if (ObjectUtils.isNotEmpty(cs)) {
|
||||
for (Object cdJson : cs) {
|
||||
HashMap<String, Object> csMap = (HashMap<String, Object>) cdJson;
|
||||
String csName = (String) csMap.get("key");
|
||||
String csValue = (String) csMap.get("val");
|
||||
if (null != csName) {
|
||||
try {
|
||||
Field field = OtaBaCxJsfzbacs.class.getDeclaredField(csName);
|
||||
field.setAccessible(true);
|
||||
field.set(otaBaCxJsfzbacs, csValue);
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
} catch (NoSuchFieldException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxJsfzbacs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxJsfzbacs otaBaCxJsfzbacs) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxJsfzbacs.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxJsfzbacs);
|
||||
saveOrUpdate(otaBaCxJsfzbacs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxJsfzbacs queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxJsfzbacs> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject queryByOtaId(String otaId, String otaIdT) {
|
||||
JSONObject res = new JSONObject();
|
||||
res.put("otaId", otaId);
|
||||
OtaBaCxJsfzbacs otaBaCxJsfzbacs = getByOtaId(otaId);
|
||||
List<OtaBaCxSjmk> kzqList = OtaBaCxSjmkService.queryByOtaId(otaId);
|
||||
if (ObjectUtils.isEmpty(otaBaCxJsfzbacs)) {
|
||||
otaBaCxJsfzbacs = getByOtaId(otaIdT);
|
||||
kzqList = OtaBaCxSjmkService.queryByOtaId(otaIdT);
|
||||
}
|
||||
res.put("bj", otaBaCxJsfzbacs);
|
||||
res.put("kzq", kzqList);
|
||||
return res;
|
||||
}
|
||||
|
||||
private OtaBaCxJsfzbacs getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxJsfzbacs> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxJsfzbacs::getOtaId, otaId);
|
||||
return this.getOne(queryWrapper, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "驾驶辅助系统基础备案参数.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void importData(MultipartFile file, String otaId, String cut) throws Exception {
|
||||
List<File> upLoadFiles = ImportFileUtil.importZip(file, cut, uploadPath);
|
||||
File upFile = null;
|
||||
for (File f : upLoadFiles) {
|
||||
if (f.getName().equals("驾驶辅助系统基础备案参数.xlsx")) {
|
||||
upFile = f;
|
||||
}
|
||||
}
|
||||
if (null == upFile) {
|
||||
throw new JeroBootException("请上传正确的文件");
|
||||
}
|
||||
JSONObject json = parseFile(upFile, otaId, cut);
|
||||
}
|
||||
|
||||
private JSONObject parseFile(File upFile, String otaId, String cut) {
|
||||
JSONObject jsonObj = new JSONObject();
|
||||
jsonObj.put("otaId",otaId);
|
||||
|
||||
|
||||
|
||||
return jsonObj;
|
||||
}
|
||||
}
|
||||
|
||||
+248
-50
@@ -1,89 +1,287 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjjsmccs;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.*;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.enums.OtaTitleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxKsjjsmccsMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxKsjjsmccsService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxListService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
|
||||
import java.io.File;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.*;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-可在线升级的驾驶辅助功能名称与参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxKsjjsmccsServiceImpl extends ServiceImpl<OtaBaCxKsjjsmccsMapper, OtaBaCxKsjjsmccs> implements IOtaBaCxKsjjsmccsService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxKsjjsmccs otaBaCxKsjjsmccs) {
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxListService otaBaCxListService;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(JSONObject json) {
|
||||
List<OtaBaCxKsjjsmccs> newList = new ArrayList<>();
|
||||
List<OtaBaCxKsjjsmccs> oldList;
|
||||
Date now = new Date();
|
||||
otaBaCxKsjjsmccs.setCreateTime(now);
|
||||
otaBaCxKsjjsmccs.setUpdateTime(now);
|
||||
save(otaBaCxKsjjsmccs);
|
||||
String otaId = (String) json.get("otaId");
|
||||
if (StringUtils.isNotEmpty(otaId)) {
|
||||
oldList = getByOtaId(otaId);
|
||||
deleteByOtaId(otaId);
|
||||
JSONArray list = json.getJSONArray("list");
|
||||
for (Object obj : list) {
|
||||
Map<String, Object> objMap = (HashMap) obj;
|
||||
OtaBaCxKsjjsmccs otaBaCxJsfzbacs = new OtaBaCxKsjjsmccs();
|
||||
Field[] fields = OtaBaCxKsjjsmccs.class.getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
if (field.getName().equals("createTime") || field.getName().equals("updateTime")) {
|
||||
continue;
|
||||
}
|
||||
Object bjObj = objMap.get(field.getName());
|
||||
if (null != bjObj) {
|
||||
try {
|
||||
field.setAccessible(true);
|
||||
field.set(otaBaCxJsfzbacs, bjObj.toString());
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
otaBaCxJsfzbacs.setOtaId(otaId);
|
||||
otaBaCxJsfzbacs.setCreateTime(now);
|
||||
otaBaCxJsfzbacs.setUpdateTime(now);
|
||||
newList.add(otaBaCxJsfzbacs);
|
||||
}
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonListRecord(otaId, OtaModuleEnum.CX_KZXSJDJSFZGNMCYCS, OtaTitleEnum.GNMC.getName(), oldList, newList, sysDictService);
|
||||
saveOrUpdateBatch(newList);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
String fj = (String) json.get("fj");
|
||||
if (StringUtils.isNotEmpty(fj)) {
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
|
||||
if (ObjectUtils.isNotEmpty(otaBaCxList)) {
|
||||
otaBaCxList.setZxsjjsfj(fj);
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjjsmccs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxKsjjsmccs otaBaCxKsjjsmccs) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxKsjjsmccs.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxKsjjsmccs);
|
||||
saveOrUpdate(otaBaCxKsjjsmccs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxKsjjsmccs queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxKsjjsmccs> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject queryByOtaId(String otaId, String otaIdT) {
|
||||
List<OtaBaCxKsjjsmccs> res = this.getByOtaId(otaId);
|
||||
if (ObjectUtil.isEmpty(res)) {
|
||||
res = getByOtaId(otaIdT);
|
||||
}
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("list", res);
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
|
||||
if (ObjectUtils.isNotEmpty(otaBaCxList) && ObjectUtils.isNotEmpty(otaBaCxList.getZxsjjsfj())) {
|
||||
json.put("fj", otaBaCxList.getZxsjjsfj());
|
||||
}
|
||||
return json;
|
||||
}
|
||||
|
||||
private List<OtaBaCxKsjjsmccs> getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxKsjjsmccs> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxKsjjsmccs::getOtaId, otaId);
|
||||
return this.list(queryWrapper);
|
||||
}
|
||||
|
||||
public void deleteByOtaId(String otaId) {
|
||||
List<OtaBaCxKsjjsmccs> list = this.getByOtaId(otaId);
|
||||
List<String> ids = new ArrayList<>();
|
||||
for (OtaBaCxKsjjsmccs mccs : list) {
|
||||
ids.add(mccs.getId());
|
||||
}
|
||||
this.deleteByIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "可在线升级的驾驶辅助功能名称与参数.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void importData(MultipartFile file, String otaId, String cut) throws Exception {
|
||||
List<File> upLoadFiles = ImportFileUtil.importZip(file, cut, uploadPath);
|
||||
File attFile = null;
|
||||
File upFile = null;
|
||||
for (File f : upLoadFiles) {
|
||||
if (f.isDirectory() && f.getName().equals("可在线升级的驾驶辅助功能名称与参数")) {
|
||||
attFile = f;
|
||||
} else if (f.getName().equals("可在线升级的驾驶辅助功能名称与参数.xlsx")) {
|
||||
upFile = f;
|
||||
}
|
||||
}
|
||||
if (null == upFile || null == attFile) {
|
||||
throw new JeroBootException("请上传正确的文件");
|
||||
}
|
||||
|
||||
List<OtaBaCxKsjjsmccs> oldList = getByOtaId(otaId);
|
||||
List<OtaBaCxKsjjsmccs> mccsList = parseFile(upFile, otaId, cut);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonListRecord(otaId, OtaModuleEnum.CX_KZXSJDJSFZGNMCYCS, OtaTitleEnum.GNMC.getName(), oldList, mccsList, sysDictService);
|
||||
deleteByOtaId(otaId);
|
||||
saveOrUpdateBatch(mccsList);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
}
|
||||
|
||||
private List<OtaBaCxKsjjsmccs> parseFile(File upFile, String otaId, String cut) throws Exception {
|
||||
Date now = new Date();
|
||||
List<OtaBaCxKsjjsmccs> mccsList = new ArrayList<>();
|
||||
Workbook wb = ImportFileUtil.readExcel(upFile);
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
int rows = s.getPhysicalNumberOfRows();
|
||||
for (int i = 3; i < rows; i++) {
|
||||
Row row = s.getRow(i);
|
||||
Cell cell = row.getCell(0);
|
||||
String str = ImportFileUtil.getCellValue(cell, wb);
|
||||
OtaBaCxKsjjsmccs mssc = new OtaBaCxKsjjsmccs();
|
||||
if ("证明材料".equals(str)) {
|
||||
//列表数据数量,在证明材料处结束
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
|
||||
if (ObjectUtils.isNotEmpty(otaBaCxList)) {
|
||||
otaBaCxList.setZxsjjsfj(str);
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
}
|
||||
break;
|
||||
} else {
|
||||
mssc.setOtaId(otaId);
|
||||
mssc.setGnmc(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(1);
|
||||
mssc.setPzqk(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
cell = row.getCell(2);
|
||||
mssc.setSfksj(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
cell = row.getCell(3);
|
||||
mssc.setJszdhjb(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(4);
|
||||
mssc.setSjggcs(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(5);
|
||||
mssc.setGnms(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(6);
|
||||
mssc.setSytj(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(7);
|
||||
mssc.setKzqmc(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(8);
|
||||
mssc.setKzqscqy(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(9);
|
||||
mssc.setKzqxh(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(10);
|
||||
mssc.setYjbbxx(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(11);
|
||||
mssc.setRjkfqy(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(12);
|
||||
mssc.setCzxtbbh(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(13);
|
||||
mssc.setCsyzsj(ImportFileUtil.getCellValue(cell, wb));
|
||||
mssc.setCreateTime(now);
|
||||
mssc.setUpdateTime(now);
|
||||
mccsList.add(mssc);
|
||||
}
|
||||
}
|
||||
return mccsList;
|
||||
}
|
||||
}
|
||||
|
||||
+249
-50
@@ -1,89 +1,288 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjxtmccs;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.*;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.enums.OtaTitleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxKsjxtmccsMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxKsjxtmccsService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxListService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
|
||||
import java.io.File;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.*;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-可升级的系统名称参数
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxKsjxtmccsServiceImpl extends ServiceImpl<OtaBaCxKsjxtmccsMapper, OtaBaCxKsjxtmccs> implements IOtaBaCxKsjxtmccsService {
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxKsjxtmccs otaBaCxKsjxtmccs) {
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxListService otaBaCxListService;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(JSONObject json) {
|
||||
List<OtaBaCxKsjxtmccs> newList = new ArrayList<>();
|
||||
List<OtaBaCxKsjxtmccs> oldList;
|
||||
Date now = new Date();
|
||||
otaBaCxKsjxtmccs.setCreateTime(now);
|
||||
otaBaCxKsjxtmccs.setUpdateTime(now);
|
||||
save(otaBaCxKsjxtmccs);
|
||||
String otaId = (String) json.get("otaId");
|
||||
if (StringUtils.isNotEmpty(otaId)) {
|
||||
oldList = getByOtaId(otaId);
|
||||
deleteByOtaId(otaId);
|
||||
JSONArray list = json.getJSONArray("list");
|
||||
for (Object obj : list) {
|
||||
Map<String, Object> objMap = (HashMap) obj;
|
||||
OtaBaCxKsjxtmccs otaBaCxKsjxtmccs = new OtaBaCxKsjxtmccs();
|
||||
Field[] fields = OtaBaCxKsjxtmccs.class.getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
if (field.getName().equals("createTime") || field.getName().equals("updateTime")) {
|
||||
continue;
|
||||
}
|
||||
Object bjObj = objMap.get(field.getName());
|
||||
if (null != bjObj) {
|
||||
try {
|
||||
field.setAccessible(true);
|
||||
field.set(otaBaCxKsjxtmccs, bjObj.toString());
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
otaBaCxKsjxtmccs.setOtaId(otaId);
|
||||
otaBaCxKsjxtmccs.setCreateTime(now);
|
||||
otaBaCxKsjxtmccs.setUpdateTime(now);
|
||||
newList.add(otaBaCxKsjxtmccs);
|
||||
}
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonListRecord(otaId, OtaModuleEnum.CX_KSJDXTMCYCS, OtaTitleEnum.XTLB.getName(), oldList, newList, sysDictService);
|
||||
saveOrUpdateBatch(newList);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
String fj = (String) json.get("fj");
|
||||
if (StringUtils.isNotEmpty(fj)) {
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
|
||||
if (ObjectUtils.isNotEmpty(otaBaCxList)) {
|
||||
otaBaCxList.setZxsjxtfj(fj);
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxKsjxtmccs
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxKsjxtmccs otaBaCxKsjxtmccs) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxKsjxtmccs.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxKsjxtmccs);
|
||||
saveOrUpdate(otaBaCxKsjxtmccs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxKsjxtmccs queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxKsjxtmccs> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject queryByOtaId(String otaId, String otaIdT) {
|
||||
List<OtaBaCxKsjxtmccs> res = getByOtaId(otaId);
|
||||
if (ObjectUtil.isEmpty(res)) {
|
||||
res = getByOtaId(otaIdT);
|
||||
}
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("list", res);
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
|
||||
if (ObjectUtils.isNotEmpty(otaBaCxList) && ObjectUtils.isNotEmpty(otaBaCxList.getZxsjxtfj())) {
|
||||
json.put("fj", otaBaCxList.getZxsjxtfj());
|
||||
}
|
||||
return json;
|
||||
}
|
||||
|
||||
private List<OtaBaCxKsjxtmccs> getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxKsjxtmccs> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxKsjxtmccs::getOtaId, otaId);
|
||||
return this.list(queryWrapper);
|
||||
}
|
||||
|
||||
public void deleteByOtaId(String otaId) {
|
||||
List<OtaBaCxKsjxtmccs> list = this.getByOtaId(otaId);
|
||||
List<String> ids = new ArrayList<>();
|
||||
for (OtaBaCxKsjxtmccs mccs : list) {
|
||||
ids.add(mccs.getId());
|
||||
}
|
||||
this.deleteByIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "可在线升级的系统名称与参数.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void importData(MultipartFile file, String otaId, String cut) throws Exception {
|
||||
List<File> upLoadFiles = ImportFileUtil.importZip(file, cut, uploadPath);
|
||||
File attFile = null;
|
||||
File upFile = null;
|
||||
for (File f : upLoadFiles) {
|
||||
if (f.isDirectory() && f.getName().equals("可在线升级的系统名称与参数")) {
|
||||
attFile = f;
|
||||
} else if (f.getName().equals("可在线升级的系统名称与参数.xlsx")) {
|
||||
upFile = f;
|
||||
}
|
||||
}
|
||||
if (null == upFile || null == attFile) {
|
||||
throw new JeroBootException("请上传正确的文件");
|
||||
}
|
||||
List<OtaBaCxKsjxtmccs> oldList = getByOtaId(otaId);
|
||||
List<OtaBaCxKsjxtmccs> mccsList = parseFile(upFile, otaId, cut);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonListRecord(otaId, OtaModuleEnum.CX_KSJDXTMCYCS, OtaTitleEnum.XTLB.getName(), oldList, mccsList, sysDictService);
|
||||
deleteByOtaId(otaId);
|
||||
saveOrUpdateBatch(mccsList);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
}
|
||||
|
||||
private List<OtaBaCxKsjxtmccs> parseFile(File upFile, String otaId, String cut) throws Exception {
|
||||
Date now = new Date();
|
||||
List<OtaBaCxKsjxtmccs> mccsList = new ArrayList<>();
|
||||
Workbook wb = ImportFileUtil.readExcel(upFile);
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
int rows = s.getPhysicalNumberOfRows();
|
||||
for (int i = 3; i < rows; i++) {
|
||||
Row row = s.getRow(i);
|
||||
Cell cell = row.getCell(0);
|
||||
String str = ImportFileUtil.getCellValue(cell, wb);
|
||||
OtaBaCxKsjxtmccs mssc = new OtaBaCxKsjxtmccs();
|
||||
if ("证明材料".equals(str)) {
|
||||
//列表数据数量,在证明材料处结束
|
||||
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
|
||||
if (ObjectUtils.isNotEmpty(otaBaCxList)) {
|
||||
otaBaCxList.setZxsjxtfj(str);
|
||||
otaBaCxListService.editById(otaBaCxList);
|
||||
}
|
||||
break;
|
||||
} else {
|
||||
mssc.setOtaId(otaId);
|
||||
mssc.setXtlb(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(1);
|
||||
mssc.setSfksj(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
cell = row.getCell(2);
|
||||
mssc.setSjbgcs(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(3);
|
||||
mssc.setTpt(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(4);
|
||||
mssc.setKzqmc(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(5);
|
||||
mssc.setAqwzxdj(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(6);
|
||||
mssc.setKzqscqy(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(7);
|
||||
mssc.setKzqxh(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(8);
|
||||
mssc.setYjbbxx(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(9);
|
||||
mssc.setCsrjbbh(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(10);
|
||||
mssc.setCsrjbwzsj(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(11);
|
||||
mssc.setSjsfyx(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(12);
|
||||
mssc.setCzxtlx(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(13);
|
||||
mssc.setCzxtscqy(ImportFileUtil.getCellValue(cell, wb));
|
||||
cell = row.getCell(14);
|
||||
mssc.setCzxtbbh(ImportFileUtil.getCellValue(cell, wb));
|
||||
mssc.setCreateTime(now);
|
||||
mssc.setUpdateTime(now);
|
||||
mccsList.add(mssc);
|
||||
}
|
||||
}
|
||||
return mccsList;
|
||||
}
|
||||
}
|
||||
|
||||
+61
-2
@@ -1,17 +1,30 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.aliyuncs.utils.IOUtils;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.OtaBaCxList;
|
||||
import com.jero.modules.ota.entity.OtaBaCxLsjl;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxListMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxListService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxLsjlService;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.split.common.FileUnZip;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.ibatis.logging.Log;
|
||||
import org.apache.ibatis.logging.LogFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.*;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@@ -24,11 +37,20 @@ import java.util.List;
|
||||
@Service
|
||||
public class OtaBaCxListServiceImpl extends ServiceImpl<OtaBaCxListMapper, OtaBaCxList> implements IOtaBaCxListService {
|
||||
|
||||
private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
protected Log log = LogFactory.getLog(this.getClass());
|
||||
|
||||
private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxLsjlService otaBaCxLsjlService;
|
||||
|
||||
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -40,7 +62,7 @@ public class OtaBaCxListServiceImpl extends ServiceImpl<OtaBaCxListMapper, OtaBa
|
||||
Date now = new Date();
|
||||
otaBaCxList.setCreateTime(now);
|
||||
otaBaCxList.setUpdateTime(now);
|
||||
save(otaBaCxList);
|
||||
saveOrUpdate(otaBaCxList);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -125,4 +147,41 @@ public class OtaBaCxListServiceImpl extends ServiceImpl<OtaBaCxListMapper, OtaBa
|
||||
throw new JeroBootException(ex.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "车型及功能备案.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void importData(MultipartFile file, String cut) {
|
||||
List<File> fileList =ImportFileUtil.importZip(file,cut,uploadPath);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportData(String otaId, HttpServletResponse response, HttpServletRequest request) {
|
||||
log.error("otaId:" + otaId);
|
||||
File template = new File("D://opt//ota//车型及功能备案.zip");
|
||||
BufferedOutputStream os = null;
|
||||
InputStream in = null;
|
||||
try {
|
||||
in = new FileInputStream(template);
|
||||
response.setHeader("Content-disposition", "attachment;filename=" + template.getName());
|
||||
response.setContentType("application/octet-stream;charset=UTF-8");
|
||||
os = new BufferedOutputStream(response.getOutputStream());
|
||||
int len;
|
||||
while ((len = in.read()) != -1) {
|
||||
os.write(len);
|
||||
os.flush();
|
||||
}
|
||||
in.close();
|
||||
os.close();
|
||||
} catch (Exception e) {
|
||||
throw new JeroBootException("下载文件失败,请重试");
|
||||
} finally {
|
||||
IOUtils.closeQuietly(in);
|
||||
IOUtils.closeQuietly(os);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+11
-1
@@ -1,5 +1,7 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.modules.ota.entity.OtaBaCxKsjjsmccs;
|
||||
import com.jero.modules.ota.entity.OtaBaCxLsjl;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxLsjlMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxLsjlService;
|
||||
@@ -28,7 +30,7 @@ public class OtaBaCxLsjlServiceImpl extends ServiceImpl<OtaBaCxLsjlMapper, OtaBa
|
||||
Date now = new Date();
|
||||
otaBaCxLsjl.setCreateTime(now);
|
||||
otaBaCxLsjl.setUpdateTime(now);
|
||||
save(otaBaCxLsjl);
|
||||
saveOrUpdate(otaBaCxLsjl);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -86,4 +88,12 @@ public class OtaBaCxLsjlServiceImpl extends ServiceImpl<OtaBaCxLsjlMapper, OtaBa
|
||||
public List<OtaBaCxLsjl> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OtaBaCxLsjl> queryByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxLsjl> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxLsjl::getOtaId, otaId);
|
||||
List<OtaBaCxLsjl> res = this.list(queryWrapper);
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
+92
-46
@@ -1,89 +1,135 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.modules.ota.entity.OtaBaCxAqcs;
|
||||
import com.jero.modules.ota.entity.OtaBaCxQt;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxQtMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxQtService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-其他升级信息
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxQtServiceImpl extends ServiceImpl<OtaBaCxQtMapper, OtaBaCxQt> implements IOtaBaCxQtService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxQt otaBaCxQt) {
|
||||
Date now = new Date();
|
||||
otaBaCxQt.setCreateTime(now);
|
||||
otaBaCxQt.setUpdateTime(now);
|
||||
save(otaBaCxQt);
|
||||
if (null != otaBaCxQt) {
|
||||
OtaBaCxQt otaBaCxQtOld = this.getByOtaId(otaBaCxQt.getOtaId());
|
||||
if (null != otaBaCxQtOld) {
|
||||
otaBaCxQt.setId(otaBaCxQtOld.getId());
|
||||
} else {
|
||||
otaBaCxQt.setCreateTime(now);
|
||||
}
|
||||
otaBaCxQt.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxQt);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
if (ObjectUtils.isEmpty(otaBaCxQtOld)) {
|
||||
otaBaCxQtOld = new OtaBaCxQt();
|
||||
}
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaCxQt.getOtaId(), OtaModuleEnum.CX_QT, otaBaCxQtOld, otaBaCxQt, sysDictService);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxQt
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxQt otaBaCxQt) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxQt.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxQt);
|
||||
saveOrUpdate(otaBaCxQt);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxQt queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxQt> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxQt queryByOtaId(String otaId, String otaIdT) {
|
||||
OtaBaCxQt res = getByOtaId(otaId);
|
||||
if (ObjectUtils.isEmpty(res)) {
|
||||
res = getByOtaId(otaIdT);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
public OtaBaCxQt getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxQt> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxQt::getOtaId, otaId);
|
||||
return this.getOne(queryWrapper, false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+24
-3
@@ -1,12 +1,15 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.modules.ota.entity.OtaBaCxSjmk;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxSjmkMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxSjmkService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-车端OTA升级功能模块
|
||||
@@ -28,7 +31,7 @@ public class OtaBaCxSjmkServiceImpl extends ServiceImpl<OtaBaCxSjmkMapper, OtaBa
|
||||
Date now = new Date();
|
||||
otaBaCxSjmk.setCreateTime(now);
|
||||
otaBaCxSjmk.setUpdateTime(now);
|
||||
save(otaBaCxSjmk);
|
||||
saveOrUpdate(otaBaCxSjmk);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -77,6 +80,24 @@ public class OtaBaCxSjmkServiceImpl extends ServiceImpl<OtaBaCxSjmkMapper, OtaBa
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OtaBaCxSjmk> queryByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxSjmk> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxSjmk::getOtaId, otaId);
|
||||
List<OtaBaCxSjmk> list = this.list(queryWrapper);
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteByOtaId(String otaId) {
|
||||
List<OtaBaCxSjmk> list = this.queryByOtaId(otaId);
|
||||
List<String> ids = new ArrayList<>();
|
||||
for (OtaBaCxSjmk sjmk: list) {
|
||||
ids.add(sjmk.getId());
|
||||
}
|
||||
this.deleteByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
|
||||
+132
@@ -0,0 +1,132 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxTxjlMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxTxjlServiceImpl extends ServiceImpl<OtaBaCxTxjlMapper, OtaBaCxTxjl> implements IOtaBaCxTxjlService {
|
||||
|
||||
|
||||
/**
|
||||
* 添加填写历史
|
||||
*
|
||||
* @param otaModuleEnum
|
||||
* @param title
|
||||
* @param oldStr
|
||||
* @param newStr
|
||||
*/
|
||||
public void addHistory(OtaModuleEnum otaModuleEnum, String title, String oldStr, String newStr) {
|
||||
OtaBaCxTxjl otaBaCxTxjl = new OtaBaCxTxjl();
|
||||
otaBaCxTxjl.setModule(otaModuleEnum.getName());
|
||||
otaBaCxTxjl.setContent("由" + title + "的" + oldStr + "改为" + newStr);
|
||||
add(otaBaCxTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加填写历史(表格)
|
||||
*
|
||||
* @param otaModuleEnum
|
||||
* @param title
|
||||
* @param number
|
||||
* @param oldStr
|
||||
* @param newStr
|
||||
*/
|
||||
public void addTableHistory(OtaModuleEnum otaModuleEnum, String title, String number, String oldStr, String newStr) {
|
||||
OtaBaCxTxjl otaBaCxTxjl = new OtaBaCxTxjl();
|
||||
otaBaCxTxjl.setModule(otaModuleEnum.getName());
|
||||
otaBaCxTxjl.setContent("将" + title + "中" + number + "的" + oldStr + "改为" + newStr);
|
||||
add(otaBaCxTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxTxjl otaBaCxTxjl) {
|
||||
Date now = new Date();
|
||||
otaBaCxTxjl.setCreateTime(now);
|
||||
otaBaCxTxjl.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxTxjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxTxjl otaBaCxTxjl) {
|
||||
Date now = new Date();
|
||||
otaBaCxTxjl.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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 id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxTxjl queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxTxjl> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OtaBaCxTxjl> queryByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxTxjl> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxTxjl::getOtaId, otaId);
|
||||
List<OtaBaCxTxjl> res = this.list(queryWrapper);
|
||||
return res;
|
||||
}
|
||||
}
|
||||
+194
-51
@@ -1,89 +1,232 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxZxsjyqMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxZxsjyqService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.AttachmentEO;
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.entity.OtaBaCxZxsjyq;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaCxZxsjyqMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
|
||||
import com.jero.modules.ota.service.IOtaBaCxZxsjyqService;
|
||||
import com.jero.modules.ota.utils.ComparisonUtil;
|
||||
import com.jero.modules.ota.utils.ImportFileUtil;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.File;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 车型备案-在线升级要求
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaCxZxsjyqServiceImpl extends ServiceImpl<OtaBaCxZxsjyqMapper, OtaBaCxZxsjyq> implements IOtaBaCxZxsjyqService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@Value(value = "${ota.templatePath}")
|
||||
private String templatePath;
|
||||
|
||||
@Value(value = "${ota.uploadPath}")
|
||||
private String uploadPath;
|
||||
|
||||
@Autowired
|
||||
private IOtaBaCxTxjlService otaBaCxTxjlService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
OtaBaCxZxsjyq otaBaCxZxsjyqOld = null;
|
||||
Date now = new Date();
|
||||
otaBaCxZxsjyq.setCreateTime(now);
|
||||
if (otaBaCxZxsjyq.getOtaId() != null) {
|
||||
otaBaCxZxsjyqOld = getByOtaId(otaBaCxZxsjyq.getOtaId());
|
||||
if (otaBaCxZxsjyqOld != null) {
|
||||
otaBaCxZxsjyq.setId(otaBaCxZxsjyqOld.getId());
|
||||
} else {
|
||||
otaBaCxZxsjyq.setCreateTime(now);
|
||||
}
|
||||
}
|
||||
otaBaCxZxsjyq.setUpdateTime(now);
|
||||
save(otaBaCxZxsjyq);
|
||||
if (null != otaBaCxZxsjyq.getZmclList() && otaBaCxZxsjyq.getZmclList().size() > 0) {
|
||||
JSONArray obj = new JSONArray();
|
||||
for (AttachmentEO aeo : otaBaCxZxsjyq.getZmclList()) {
|
||||
obj.add(aeo);
|
||||
}
|
||||
otaBaCxZxsjyq.setZmcl(obj.toString());
|
||||
}
|
||||
saveOrUpdate(otaBaCxZxsjyq);
|
||||
ComparisonUtil cu = new ComparisonUtil();
|
||||
if (ObjectUtils.isEmpty(otaBaCxZxsjyqOld)) {
|
||||
otaBaCxZxsjyqOld = new OtaBaCxZxsjyq();
|
||||
}
|
||||
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaCxZxsjyq.getOtaId(), OtaModuleEnum.CX_ZXSJYQ, otaBaCxZxsjyqOld, otaBaCxZxsjyq, sysDictService);
|
||||
otaBaCxTxjlService.saveBatch(reList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaCxZxsjyq
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaCxZxsjyq otaBaCxZxsjyq) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaCxZxsjyq.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaCxZxsjyq);
|
||||
saveOrUpdate(otaBaCxZxsjyq);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaCxZxsjyq queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaCxZxsjyq> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxZxsjyq queryByOtaId(String otaId, String otaIdT) {
|
||||
//判断是否保存过,否则查询模版数据回显
|
||||
OtaBaCxZxsjyq res = getByOtaId(otaId);
|
||||
if (ObjectUtils.isEmpty(res)) {
|
||||
res = getByOtaId(otaIdT);
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(res) && StringUtils.isNotEmpty(res.getZmcl())) {
|
||||
List<AttachmentEO> aeoList = JSONArray.parseArray(res.getZmcl(), AttachmentEO.class);
|
||||
res.setZmclList(aeoList);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
private OtaBaCxZxsjyq getByOtaId(String otaId) {
|
||||
LambdaQueryWrapper<OtaBaCxZxsjyq> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OtaBaCxZxsjyq::getOtaId, otaId);
|
||||
return this.getOne(queryWrapper, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) {
|
||||
ImportFileUtil.exportTemplate(response, templatePath + "在线升级要求.zip");
|
||||
}
|
||||
|
||||
@Override
|
||||
public OtaBaCxZxsjyq importData(MultipartFile file, String otaId, String cut) throws Exception {
|
||||
List<File> upLoadFiles = ImportFileUtil.importZip(file, cut, uploadPath);
|
||||
File attFile = null;
|
||||
File upFile = null;
|
||||
for (File f : upLoadFiles) {
|
||||
if (f.isDirectory() && f.getName().equals("在线升级要求")) {
|
||||
attFile = f;
|
||||
} else if (f.getName().equals("在线升级要求.xlsx")) {
|
||||
upFile = f;
|
||||
}
|
||||
}
|
||||
if (null == upFile || null == attFile) {
|
||||
throw new JeroBootException("请上传正确的文件");
|
||||
}
|
||||
OtaBaCxZxsjyq otaBaCxZxsjyq = parseFile(upFile, cut);
|
||||
otaBaCxZxsjyq.setOtaId(otaId);
|
||||
add(otaBaCxZxsjyq);
|
||||
return otaBaCxZxsjyq;
|
||||
}
|
||||
|
||||
private OtaBaCxZxsjyq parseFile(File upFile, String cut) throws Exception {
|
||||
OtaBaCxZxsjyq otaBaCxZxsjyq = new OtaBaCxZxsjyq();
|
||||
Workbook wb = ImportFileUtil.readExcel(upFile);
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
Row row = s.getRow(2);
|
||||
Cell cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setBhsjb(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(3);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setBhclbb(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(4);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setClgxnl(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(5);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setClsjtj(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(6);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setClsjdl(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(7);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setSjbhaq(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(8);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setSjantj(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(9);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setSjsbaq(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(10);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setSjgg(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(11);
|
||||
cell = row.getCell(2);
|
||||
otaBaCxZxsjyq.setSjzt(ImportFileUtil.getCellValueYesOrNo(cell, wb));
|
||||
row = s.getRow(2);
|
||||
cell = row.getCell(3);
|
||||
otaBaCxZxsjyq.setZmcl(ImportFileUtil.getCellValue(cell, wb));
|
||||
return otaBaCxZxsjyq;
|
||||
}
|
||||
}
|
||||
|
||||
+1
-3
@@ -2,8 +2,6 @@ package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.ota.entity.OtaBaCxList;
|
||||
import com.jero.modules.ota.entity.OtaBaCxLsjl;
|
||||
import com.jero.modules.ota.entity.OtaBaSjList;
|
||||
import com.jero.modules.ota.entity.OtaBaSjLsjl;
|
||||
import com.jero.modules.ota.mapper.OtaBaSjListMapper;
|
||||
@@ -26,7 +24,7 @@ import java.util.List;
|
||||
@Service
|
||||
public class OtaBaSjListServiceImpl extends ServiceImpl<OtaBaSjListMapper, OtaBaSjList> implements IOtaBaSjListService {
|
||||
|
||||
private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
@Autowired
|
||||
private IOtaBaSjLsjlService otaBaSjLsjlService;
|
||||
|
||||
+47
-44
@@ -1,29 +1,32 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaSjLsjl;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.mapper.OtaBaSjLsjlMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaSjLsjlService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
/**
|
||||
* @Description: 升级备案-历史记录
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-17
|
||||
* @Date: 2023-03-17
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaSjLsjlServiceImpl extends ServiceImpl<OtaBaSjLsjlMapper, OtaBaSjLsjl> implements IOtaBaSjLsjlService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaSjLsjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaSjLsjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaSjLsjl otaBaSjLsjl) {
|
||||
Date now = new Date();
|
||||
otaBaSjLsjl.setCreateTime(now);
|
||||
@@ -31,58 +34,58 @@ public class OtaBaSjLsjlServiceImpl extends ServiceImpl<OtaBaSjLsjlMapper, OtaBa
|
||||
save(otaBaSjLsjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaSjLsjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaSjLsjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaSjLsjl otaBaSjLsjl) {
|
||||
Date now = new Date();
|
||||
Date now = new Date();
|
||||
otaBaSjLsjl.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaSjLsjl);
|
||||
saveOrUpdate(otaBaSjLsjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaSjLsjl queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaSjLsjl> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
+89
@@ -0,0 +1,89 @@
|
||||
package com.jero.modules.ota.service.impl;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaSjTxjl;
|
||||
import com.jero.modules.ota.mapper.OtaBaSjTxjlMapper;
|
||||
import com.jero.modules.ota.service.IOtaBaSjTxjlService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
/**
|
||||
* @Description: 车型升级-填写记录表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-25
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class OtaBaSjTxjlServiceImpl extends ServiceImpl<OtaBaSjTxjlMapper, OtaBaSjTxjl> implements IOtaBaSjTxjlService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(OtaBaSjTxjl otaBaSjTxjl) {
|
||||
Date now = new Date();
|
||||
otaBaSjTxjl.setCreateTime(now);
|
||||
otaBaSjTxjl.setUpdateTime(now);
|
||||
save(otaBaSjTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param otaBaSjTxjl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(OtaBaSjTxjl otaBaSjTxjl) {
|
||||
Date now = new Date();
|
||||
otaBaSjTxjl.setUpdateTime(now);
|
||||
saveOrUpdate(otaBaSjTxjl);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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 id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OtaBaSjTxjl queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OtaBaSjTxjl> queryList() {
|
||||
return list();
|
||||
}
|
||||
}
|
||||
+192
@@ -0,0 +1,192 @@
|
||||
package com.jero.modules.ota.utils;
|
||||
|
||||
import com.jero.modules.ota.entity.OtaBaCxTxjl;
|
||||
import com.jero.modules.ota.enums.OtaModuleEnum;
|
||||
import com.jero.modules.ota.enums.OtaTitleEnum;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 对比新老数据,添加填写记录
|
||||
*
|
||||
* @param <T>
|
||||
*/
|
||||
public class ComparisonUtil<T> {
|
||||
|
||||
public ComparisonUtil() {
|
||||
}
|
||||
|
||||
/**
|
||||
* 对比字段并添加到记录
|
||||
*/
|
||||
public List<OtaBaCxTxjl> comparisonRecord(String otaId, OtaModuleEnum otaModuleEnum, T oldClazz, T newClazz, ISysDictService sysDictService) {
|
||||
List<OtaBaCxTxjl> resList = new ArrayList<>();
|
||||
Field[] fields = newClazz.getClass().getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
String title = "";
|
||||
OtaTitleEnum ote = OtaTitleEnum.getOtaTitleEnum(field.getName());
|
||||
if (null == ote) {
|
||||
continue;
|
||||
}
|
||||
title = ote.getValue();
|
||||
field.setAccessible(true);
|
||||
String newStr = parseDictText(ote, field, newClazz, sysDictService);
|
||||
String oldStr = parseDictText(ote, field, oldClazz, sysDictService);
|
||||
if (!newStr.equals(oldStr)) {
|
||||
String content = "由" + title + "的" + oldStr + "改为" + newStr;
|
||||
resList.add(new OtaBaCxTxjl(otaId, otaModuleEnum.getName(), content));
|
||||
}
|
||||
}
|
||||
return resList;
|
||||
}
|
||||
|
||||
public List<OtaBaCxTxjl> comparisonListRecord(String otaId, OtaModuleEnum otaModuleEnum, String tableTitle, List<T> oldList, List<T> newList, ISysDictService sysDictService) {
|
||||
List<OtaBaCxTxjl> resList = new ArrayList<>();
|
||||
try {
|
||||
for (T newObj : newList) {
|
||||
if (ObjectUtils.isNotEmpty(newObj)) {
|
||||
Field idField = newObj.getClass().getDeclaredField("id");
|
||||
idField.setAccessible(true);
|
||||
Object id = idField.get(newObj);
|
||||
if (ObjectUtils.isEmpty(id)) {
|
||||
Field tableField = newObj.getClass().getDeclaredField(tableTitle);
|
||||
tableField.setAccessible(true);
|
||||
String content = "新增了一条" + tableField.get(newObj).toString();
|
||||
resList.add(new OtaBaCxTxjl(otaId, otaModuleEnum.getName(), content));
|
||||
Field[] fields = newObj.getClass().getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
String title = "";
|
||||
OtaTitleEnum ote = OtaTitleEnum.getOtaTitleEnum(field.getName());
|
||||
if (null == ote) {
|
||||
continue;
|
||||
}
|
||||
title = ote.getValue();
|
||||
field.setAccessible(true);
|
||||
Object newVal = field.get(newObj);
|
||||
String newStr = "空";
|
||||
if (ObjectUtils.isNotEmpty(newVal)) {
|
||||
newStr = newVal.toString();
|
||||
}
|
||||
content = "增加" + tableField.get(newObj).toString() + "中" + title + "为" + newStr;
|
||||
resList.add(new OtaBaCxTxjl(otaId, otaModuleEnum.getName(), content));
|
||||
}
|
||||
} else {
|
||||
for (T oldObj : oldList) {
|
||||
String oldId = idField.get(oldObj).toString();
|
||||
if (oldId.equals(id.toString())) {
|
||||
resList.addAll(comparisonCertRecord(otaId, otaModuleEnum, tableTitle, newObj, oldObj, sysDictService));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
for (T oldObj : oldList) {
|
||||
if (ObjectUtils.isNotEmpty(oldObj)) {
|
||||
Field idField = oldObj.getClass().getDeclaredField("id");
|
||||
idField.setAccessible(true);
|
||||
String oldId = idField.get(oldObj).toString();
|
||||
for (T newObj : newList) {
|
||||
if (ObjectUtils.isNotEmpty(newObj)) {
|
||||
Object newId = idField.get(newObj);
|
||||
if (ObjectUtils.isNotEmpty(newObj) && oldId.equals(newId.toString())) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Field tableTitleField = oldObj.getClass().getDeclaredField(tableTitle);
|
||||
tableTitleField.setAccessible(true);
|
||||
Object tableTitleObj = tableTitleField.get(oldObj);
|
||||
String tableTitleObjStr = "空";
|
||||
if (ObjectUtils.isNotEmpty(tableTitleObj)) {
|
||||
tableTitleObjStr = tableTitleObj.toString();
|
||||
}
|
||||
String content = "删除了" + tableTitleObjStr;
|
||||
resList.add(new OtaBaCxTxjl(otaId, otaModuleEnum.getName(), content));
|
||||
}
|
||||
}
|
||||
} catch (IllegalAccessException | NoSuchFieldException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return resList;
|
||||
}
|
||||
|
||||
|
||||
public List<OtaBaCxTxjl> comparisonCertRecord(String otaId, OtaModuleEnum otaModuleEnum, String tableTitle, T oldClazz, T newClazz, ISysDictService sysDictService) {
|
||||
List<OtaBaCxTxjl> resList = new ArrayList<>();
|
||||
Field[] fields = newClazz.getClass().getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
try {
|
||||
String title = "";
|
||||
OtaTitleEnum ote = OtaTitleEnum.getOtaTitleEnum(field.getName());
|
||||
if (null == ote) {
|
||||
continue;
|
||||
}
|
||||
title = ote.getValue();
|
||||
field.setAccessible(true);
|
||||
String newStr = parseDictText(ote, field, newClazz, sysDictService);
|
||||
String oldStr = parseDictText(ote, field, oldClazz, sysDictService);
|
||||
|
||||
if (!newStr.equals(oldStr)) {
|
||||
Object newVal = field.get(newClazz);
|
||||
String newTitleStr = "空";
|
||||
if (ObjectUtils.isNotEmpty(newVal)) {
|
||||
Field tableField = newVal.getClass().getDeclaredField(tableTitle);
|
||||
tableField.setAccessible(true);
|
||||
Object newTitleVal = tableField.get(newVal);
|
||||
if (ObjectUtils.isNotEmpty(newTitleVal)) {
|
||||
newTitleStr = newTitleVal.toString();
|
||||
}
|
||||
}
|
||||
String content = newTitleStr + "的" + title + "由" + oldStr + "改为" + newStr;
|
||||
resList.add(new OtaBaCxTxjl(otaId, otaModuleEnum.getName(), content));
|
||||
}
|
||||
} catch (IllegalAccessException | NoSuchFieldException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return resList;
|
||||
}
|
||||
|
||||
private String parseDictText(OtaTitleEnum ote, Field field, T clazz, ISysDictService sysDictService) {
|
||||
String res = "空";
|
||||
try {
|
||||
Object newVal = field.get(clazz);
|
||||
if ("0".equals(ote.getType())) {
|
||||
if (ObjectUtils.isNotEmpty(newVal)) {
|
||||
res = newVal.toString();
|
||||
}
|
||||
} else if ("2".equals(ote.getType())) {
|
||||
if (ObjectUtils.isNotEmpty(newVal)) {
|
||||
if ("1".equals(newVal.toString())) {
|
||||
res = "是";
|
||||
} else if ("2".equals(newVal.toString())) {
|
||||
res = "否";
|
||||
}
|
||||
}
|
||||
} else {
|
||||
newVal = field.get(clazz);
|
||||
if (ObjectUtils.isNotEmpty(newVal)) {
|
||||
String[] newValStr = newVal.toString().split(",");
|
||||
res = "";
|
||||
for (int i = 0; i < newValStr.length; i++) {
|
||||
if (i == newValStr.length - 1) {
|
||||
res += sysDictService.queryDictTextByKey(ote.getType(), newValStr[i]);
|
||||
} else {
|
||||
res += sysDictService.queryDictTextByKey(ote.getType(), newValStr[i]) + ",";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
+213
@@ -0,0 +1,213 @@
|
||||
package com.jero.modules.ota.utils;
|
||||
|
||||
import com.aliyuncs.utils.IOUtils;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.split.common.FileUnZip;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||
import org.apache.poi.ss.usermodel.*;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class ImportFileUtil {
|
||||
|
||||
public static File importFile(MultipartFile file, String cut, String uploadPath, String upLoadFileExt) {
|
||||
File upLoadFile = null;
|
||||
try {
|
||||
int pos = file.getOriginalFilename().lastIndexOf(".");
|
||||
String str = file.getOriginalFilename().substring(pos + 1).toLowerCase();
|
||||
String fileNameOrg = file.getOriginalFilename().substring(0, pos);
|
||||
//判断上传文件必须是
|
||||
if (!str.equals(upLoadFileExt)) {
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("请上传" + upLoadFileExt + "格式的文件");
|
||||
} else {
|
||||
throw new JeroBootException("Please upload a " + upLoadFileExt + " file");
|
||||
}
|
||||
}
|
||||
String path = uploadPath + File.separator + "modal" + File.separator + fileNameOrg + System.currentTimeMillis();
|
||||
File saveDirectory = new File(path);
|
||||
if (!saveDirectory.isDirectory()) {
|
||||
saveDirectory.mkdir();
|
||||
}
|
||||
FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path + File.separator + file.getOriginalFilename()));
|
||||
upLoadFile = new File(path + File.separator + file.getOriginalFilename());
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return upLoadFile;
|
||||
|
||||
}
|
||||
|
||||
public static List<File> importZip(MultipartFile file, String cut, String uploadPath) {
|
||||
List<File> fileList = new ArrayList<>();
|
||||
try {
|
||||
int pos = file.getOriginalFilename().lastIndexOf(".");
|
||||
String str = file.getOriginalFilename().substring(pos + 1).toLowerCase();
|
||||
String filenameorg = file.getOriginalFilename().substring(0, pos);
|
||||
//判断上传文件必须是zip
|
||||
if (!str.equals("zip") && !str.equals("rar")) {
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("请上传zip格式的文件或rar格式的文件");
|
||||
} else {
|
||||
throw new JeroBootException("Please upload a zip file or rar file");
|
||||
}
|
||||
}
|
||||
String path = uploadPath + File.separator + "modal" + File.separator + filenameorg + System.currentTimeMillis();
|
||||
File saveDirectory = new File(path);
|
||||
if (!saveDirectory.isDirectory()) {
|
||||
saveDirectory.mkdir();
|
||||
}
|
||||
FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path + File.separator + file.getOriginalFilename()));
|
||||
|
||||
//解压缩
|
||||
String zipEntryName = "";
|
||||
if (str.equals("zip") || str.equals("rar")) {
|
||||
zipEntryName = FileUnZip.unZipFiles(path + File.separator + file.getOriginalFilename(), path);
|
||||
} else {
|
||||
// zipEntryName = FileRarUtils.rarUnCompress(path + File.separator + file.getOriginalFilename(), path);
|
||||
}
|
||||
//判断压缩包下是否只有一个文件夹
|
||||
// File fileTemp = new File(path);
|
||||
// int length = fileTemp.listFiles().length;
|
||||
// if (length > 2) {
|
||||
// //删除原上传文件
|
||||
// FileUnZip.deleteDir(saveDirectory);
|
||||
// if (CutEnum.CN.getValue().equals(cut)) {
|
||||
// throw new JeroBootException("压缩包中必须有且仅有一个文件夹,请重新上传");
|
||||
// } else {
|
||||
// throw new JeroBootException("There must be only one folder in the compressed package Please upload it again");
|
||||
// }
|
||||
//
|
||||
// }
|
||||
File fileNew = new File(zipEntryName);
|
||||
for (File file1 : fileNew.listFiles()) {
|
||||
if (file1.getName().contains(".xls") || file1.getName().contains(".xlsx") || file1.isDirectory()
|
||||
|| file1.getName().contains(".docx") || file1.getName().contains(".doc")) {
|
||||
fileList.add(file1);
|
||||
}
|
||||
}
|
||||
// if (fileList.size() == 0) {
|
||||
// //删除原上传文件
|
||||
// FileUnZip.deleteDir(saveDirectory);
|
||||
// if (CutEnum.CN.getValue().equals(cut)) {
|
||||
// throw new JeroBootException("压缩包根目录下没有excel作为导入数据,请重新上传");
|
||||
// } else {
|
||||
// throw new JeroBootException("Excel does not exist in the root directory of the compressed package Please upload it again");
|
||||
// }
|
||||
// } else if (fileList.size() > 1) {
|
||||
// //删除原上传文件
|
||||
// FileUnZip.deleteDir(saveDirectory);
|
||||
// if (CutEnum.CN.getValue().equals(cut)) {
|
||||
// throw new JeroBootException("压缩包根目录下仅能存在一个excel为导入数据,请重新上传");
|
||||
// } else {
|
||||
// throw new JeroBootException("Only one Excel file can be imported in the compressed package root directory. Please upload data again");
|
||||
// }
|
||||
// }
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return fileList;
|
||||
}
|
||||
|
||||
public static void exportTemplate(HttpServletResponse response, String templateFilePath) {
|
||||
File template = new File(templateFilePath);
|
||||
BufferedOutputStream os = null;
|
||||
InputStream in = null;
|
||||
try {
|
||||
in = new FileInputStream(template);
|
||||
response.setHeader("Content-disposition", "attachment;filename=" + template.getName());
|
||||
response.setContentType("application/octet-stream;charset=UTF-8");
|
||||
os = new BufferedOutputStream(response.getOutputStream());
|
||||
int len;
|
||||
while ((len = in.read()) != -1) {
|
||||
os.write(len);
|
||||
os.flush();
|
||||
}
|
||||
in.close();
|
||||
os.close();
|
||||
} catch (Exception e) {
|
||||
throw new JeroBootException("下载文件失败,请重试");
|
||||
} finally {
|
||||
IOUtils.closeQuietly(in);
|
||||
IOUtils.closeQuietly(os);
|
||||
}
|
||||
}
|
||||
|
||||
public static Workbook readExcel(File file) {
|
||||
Workbook wb = null;
|
||||
if (file == null) {
|
||||
return null;
|
||||
}
|
||||
String extString = file.getName().substring(file.getName().lastIndexOf("."));
|
||||
InputStream is = null;
|
||||
try {
|
||||
is = new FileInputStream(file);
|
||||
if (".xls".equals(extString)) {
|
||||
return wb = new HSSFWorkbook(is);
|
||||
} else if (".xlsx".equals(extString)) {
|
||||
return wb = new XSSFWorkbook(is);
|
||||
}
|
||||
is.close();
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
IOUtils.closeQuietly(is);
|
||||
}
|
||||
return wb;
|
||||
}
|
||||
|
||||
public static String getCellValue(Cell cell, Workbook workbook) throws Exception {
|
||||
FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();
|
||||
DataFormatter formatter = new DataFormatter();
|
||||
//单元格不设置数字格式
|
||||
if (ObjectUtils.isNotEmpty(cell)) {
|
||||
cell.setCellStyle(null);
|
||||
return formatter.formatCellValue(cell, evaluator);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getCellValueYesOrNo(Cell cell, Workbook workbook) throws Exception {
|
||||
String res = "";
|
||||
String str = getCellValue(cell, workbook);
|
||||
if (StringUtils.isNotEmpty(str)) {
|
||||
if (str.equals("是")) {
|
||||
res = "1";
|
||||
} else if (str.equals("否")) {
|
||||
res = "2";
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
public static String getCellValueDict(Cell cell, Workbook wb, String dictType, ISysDictService sysDictService, String cut) throws Exception {
|
||||
String res = "";
|
||||
String str = ImportFileUtil.getCellValue(cell, wb);
|
||||
if (StringUtils.isNotEmpty(str)) {
|
||||
String[] strs = str.split(",");
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < strs.length; i++) {
|
||||
if (i >= strs.length - 1) {
|
||||
sb.append(sysDictService.queryDictItemByValue(dictType, strs[i], cut));
|
||||
} else {
|
||||
sb.append(sysDictService.queryDictItemByValue(dictType, strs[i], cut)).append(",");
|
||||
}
|
||||
}
|
||||
res = sb.toString();
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -475,3 +475,8 @@ Space:
|
||||
# appSecret: d3bf6e69-0726-42ee-91bd-0441a8f6ccdf
|
||||
# domainUrl: https://api-plm-portal.nioint.com/api/v1/plm-portal-middle-integration/integration/api/common/queryModelByModule
|
||||
|
||||
ota :
|
||||
#OTA 模版下载路径
|
||||
templatePath: D://opt//ota//template//
|
||||
uploadPath: D://opt//ota//upload//
|
||||
|
||||
|
||||
Generated
+21227
-182
File diff suppressed because it is too large
Load Diff
@@ -1646,13 +1646,13 @@ module.exports = {
|
||||
ifanupgrademayaffectvehiclesafety:'当执行升级可能影响车辆安全时,应在升级执行过程中通过技术手段确保车辆安全',
|
||||
iftheimplementationoftheupgradaffectsdrivingsafety:'若升级的执行影响驾驶安全,至少应满足:\n' +
|
||||
'\n' +
|
||||
'(a)确保升级执行期间无法驾驶车辆;\n' +
|
||||
'(a)确保升级执行期间无法驾驶车辆;\n' +
|
||||
'\n' +
|
||||
'(b)确保驾驶员不能使用任何可能影响车辆安全或成功执行升级的车辆功能',
|
||||
ensurethatthevehicleisinasafecondition:'若升级失败或中断,车辆能够恢复到以前的可用版本,或确保车辆处于安全状态。',
|
||||
priortotheexecutionoftheupgrade:'在升级执行前,应告知车辆用户升级信息,告知的信息应包括:\n' +
|
||||
'\n' +
|
||||
'(a)升级目的;\n' +
|
||||
'(a)升级目的;\n' +
|
||||
'\n' +
|
||||
'(b)车辆功能升级所实施的任何变更;\n' +
|
||||
'\n' +
|
||||
@@ -1663,9 +1663,9 @@ module.exports = {
|
||||
'(e)可能帮助车辆用户安全执行升级的任何指导信息。',
|
||||
afterperformingtheupgrade:'在执行升级后,车辆应:\n' +
|
||||
'\n' +
|
||||
'(a))告知车辆用户车辆升级的结果(成功或失败);\n' +
|
||||
'(a)告知车辆用户车辆升级的结果(成功或失败);\n' +
|
||||
'\n' +
|
||||
'(b)若升级成功,告知车辆用户已实施的变更,用户手册(如果适用)的任何相关更新。',
|
||||
'(b)若升级成功,告知车辆用户已实施的变更,用户手册(如果适用)的任何相关更新。',
|
||||
upgradepacketprotectionmeasures:'升级包保护措施',
|
||||
otaupgradedsecuritymeasuresforvehicles:'车辆OTA升级安全措施',
|
||||
authenticityandintegrityprotectionmechanism:'真实性、完整性保护机制(可多选)',
|
||||
@@ -1762,7 +1762,7 @@ module.exports = {
|
||||
notifiestheuseroftheupgradesuccessorfailure:'告知用户升级成功或失败',
|
||||
informimplementationchanges:'告知实施的变更',
|
||||
allupdatestotheusermanualareinformed:'告知了对用户手册的全部更新内容',
|
||||
usernotificationmode:'告知用户方式',
|
||||
usernotificationmode:'告知用户方式(可多选)',
|
||||
userinformstherelevantfile:'用户告知相关文件',
|
||||
taskname:'任务名称',
|
||||
updatereleasetime:'升级发布时间',
|
||||
|
||||
@@ -902,6 +902,7 @@
|
||||
// })
|
||||
// this.detailDatetransformation.push(item)
|
||||
})
|
||||
console.log(this.detailDate)
|
||||
console.log(this.detailDateList, 'oooooo')
|
||||
},
|
||||
methods: {
|
||||
|
||||
@@ -931,6 +931,10 @@
|
||||
if (itemLi.type === 'pull_more') {
|
||||
itemLi.dataValue = itemLi.dataValue === null ? [] : itemLi.dataValue.split(',')
|
||||
}
|
||||
if (Obj.state == '已同步至上报库' || Obj.state == 'Synced to library'){
|
||||
Obj[item].referencesColFlag = '1'
|
||||
itemLi.isLock = '1'
|
||||
}
|
||||
})
|
||||
}
|
||||
// Obj[item].list.forEach((itemLi) => {
|
||||
@@ -1025,6 +1029,7 @@
|
||||
for (const key in Obj[item].paramsConfigData){
|
||||
Obj[item].paramsConfigData[key].forEach((itemLi) => {
|
||||
console.log(item)
|
||||
console.log(this.currentPersonRole)
|
||||
if((this.currentPersonRole == 'homo' || this.currentPersonRole == 'admin') && item == 'referencesCol'){
|
||||
itemLi.isLock = 0
|
||||
}else{
|
||||
@@ -1060,6 +1065,10 @@
|
||||
if (itemLi.type === 'pull_more') {
|
||||
itemLi.dataValue = !itemLi.dataValue ? [] : itemLi.dataValue.split(',')
|
||||
}
|
||||
if (Obj.state == '已同步至上报库' || Obj.state == 'Synced to library'){
|
||||
itemLi.isLock = '1'
|
||||
Obj[item].referencesColFlag = '1'
|
||||
}
|
||||
})
|
||||
}
|
||||
// Obj[item].list.forEach((itemLi) => {
|
||||
|
||||
@@ -0,0 +1,239 @@
|
||||
<template>
|
||||
<div>
|
||||
<a-modal v-model="visible" :maskClosable="false" :footer="[]" :title="title">
|
||||
<a-upload-dragger
|
||||
:accept='accept'
|
||||
:disabled="disabled"
|
||||
class="ant-upload-list"
|
||||
:class="{'uploadFile':isUploadFile}"
|
||||
name="file"
|
||||
:file-list="myfileList"
|
||||
:multiple="multiple"
|
||||
:action="uploadAction+'?state='+state+'&cut='+cut"
|
||||
:headers="headers"
|
||||
@preview="preview"
|
||||
:before-upload="beforeUpload"
|
||||
:remove='remove'
|
||||
@change="handleChange">
|
||||
<p v-if="!isUploadFile">
|
||||
<a-icon class="action-upload" type="cloud-upload"/>
|
||||
</p>
|
||||
<p v-if="!isUploadFile" class="ant-upload-text" style="font-size: 14px;line-height: 30px">
|
||||
{{this.$t('clickUpload')}}</p>
|
||||
</a-upload-dragger>
|
||||
</a-modal>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Vue from 'vue'
|
||||
import { ACCESS_TOKEN } from '@/store/mutation-types'
|
||||
import { getAction, postAction, downFile, downloadFile } from '@/api/manage'
|
||||
import { Base64 } from 'js-base64'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
name: 'file',
|
||||
props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads', 'Uploadable'],
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
title: this.$t('clickUpload'),
|
||||
uploadAction: window._CONFIG['domianURL'] + '/sys/common/upload',
|
||||
state: undefined,
|
||||
myuploadAction: window._CONFIG['domianURL'] + this.thisFileUploadUrl,
|
||||
upDataList: [],
|
||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||
fileList: [],
|
||||
myfileList: [],
|
||||
isLoding: false,
|
||||
cut: '',
|
||||
multiple: true,
|
||||
accept: ''
|
||||
}
|
||||
},
|
||||
created() {
|
||||
const token = Vue.ls.get(ACCESS_TOKEN)
|
||||
this.headers = { 'X-Access-Token': token }
|
||||
this.containerId = 'container-ty-' + new Date().getTime()
|
||||
},
|
||||
mounted() {
|
||||
let long = localStorage.getItem('language')
|
||||
this.cut = ''
|
||||
if (long && long == 'zh-cn') {
|
||||
this.cut = 'cn'
|
||||
} else if (long && long == 'en-us') {
|
||||
this.cut = 'en'
|
||||
}
|
||||
if (this.isMultiple) {
|
||||
this.multiple = false
|
||||
}
|
||||
this.accept = this.restrictUploads ? this.Uploadable : '*.*'
|
||||
// console.log(this.thisFileType,this.thisFileSize,this.thisFileUploadUrl);
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
perentHandleFunc(data) {
|
||||
this.myfileList = data
|
||||
if (data && data.length > 0) {
|
||||
this.myfileList.forEach((res) => {
|
||||
res.name = res.fileName
|
||||
res.uid = res.id
|
||||
})
|
||||
} else {
|
||||
this.myfileList = []
|
||||
}
|
||||
},
|
||||
beforeUpload(file, fileList) {
|
||||
// let thisFileType = this.thisFileType.replace(/\s+/g, "");
|
||||
console.log(file)
|
||||
this.fileTypeSatus = true
|
||||
if (this.isMultiple) {
|
||||
if ((this.myfileList && this.myfileList.length == 1) || this.myfileList && this.myfileList.length > 1) {
|
||||
this.$message.warning(this.$t('onlyOnefileUploaded'))
|
||||
return false
|
||||
}
|
||||
}
|
||||
if (this.restrictUploads) {
|
||||
let fileName = file.name
|
||||
let index1 = fileName.lastIndexOf('.')
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
if (this.Uploadable.includes(fileSuffix)) {
|
||||
|
||||
} else {
|
||||
this.$message.warning(this.$t('uploadOnly') + this.Uploadable + this.$t('file'))
|
||||
return false
|
||||
}
|
||||
}
|
||||
//TODO 客户要求不拦截文件
|
||||
// if(file.type){
|
||||
// if (thisFileType.indexOf(file.type) != -1) {
|
||||
// this.fileTypeSatus = true;
|
||||
// }else{
|
||||
// this.fileTypeSatus = false;
|
||||
// }
|
||||
// }else{
|
||||
// if(file.name.slice(file.name.length - 3 , file.name.length) == 'rar'){
|
||||
// this.fileTypeSatus = true
|
||||
// }else if(file.type == 'application/x-zip-compressed'){
|
||||
// this.fileTypeSatus = true
|
||||
// }else{
|
||||
// this.fileTypeSatus = false;
|
||||
// }
|
||||
// }
|
||||
this.$message.destroy()
|
||||
},
|
||||
remove() {
|
||||
this.fileTypeSatus = true
|
||||
},
|
||||
mypreview(item) {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + encodeURIComponent(this.downLoadFileUrl + '/' + item.ext1)
|
||||
window.open(url, '_blank')
|
||||
},
|
||||
handleChange(info) {
|
||||
let { file } = info
|
||||
const status = info.file.status
|
||||
info.fileList.forEach((val, index) => {
|
||||
if (val.response && !val.response.result) {
|
||||
this.$message.error(val.response.message)
|
||||
info.fileList.splice(index, 1)
|
||||
}
|
||||
})
|
||||
if (status === 'error') {
|
||||
this.$emit('uploadSuccess', this.fileList)
|
||||
this.$message.destroy()
|
||||
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
|
||||
} else if (status === 'removed') {
|
||||
this.myfileList = info.fileList
|
||||
this.fileList = []
|
||||
this.myfileList.forEach((res) => {
|
||||
if (res.response) {
|
||||
this.fileList.push(res.response.result)
|
||||
} else {
|
||||
this.fileList.push(res)
|
||||
}
|
||||
})
|
||||
this.$emit('uploadSuccess', this.fileList)
|
||||
if (this.myfileList.length > 0) {
|
||||
this.$message.destroy()
|
||||
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
|
||||
}
|
||||
} else if (status === 'done') {
|
||||
this.fileList = []
|
||||
this.myfileList = info.fileList
|
||||
if (info.fileList.length > 20) {
|
||||
info.fileList.splice(20)
|
||||
this.myfileList = info.fileList
|
||||
this.myfileList.forEach((res) => {
|
||||
if (res.response) {
|
||||
this.fileList.push(res.response.result)
|
||||
} else {
|
||||
this.fileList.push(res)
|
||||
}
|
||||
})
|
||||
this.$emit('uploadSuccess', this.fileList)
|
||||
this.$message.destroy()
|
||||
this.$message.error(this.$t('UploadMost'))
|
||||
return
|
||||
}
|
||||
this.myfileList.forEach((res) => {
|
||||
if (res.response) {
|
||||
this.fileList.push(res.response.result)
|
||||
} else {
|
||||
this.fileList.push(res)
|
||||
}
|
||||
})
|
||||
this.$emit('uploadSuccess', this.fileList)
|
||||
if (this.myfileList.length > 0) {
|
||||
this.$message.destroy()
|
||||
if (file.response.success) {
|
||||
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
|
||||
}
|
||||
}
|
||||
} else if (status === 'uploading') {
|
||||
this.myfileList = info.fileList
|
||||
// this.$message.success(`${info.file.name} 文件上传成功。`);
|
||||
}
|
||||
},
|
||||
resetFileList() {
|
||||
this.myfileList = []
|
||||
this.fileList = []
|
||||
},
|
||||
preview(file) {
|
||||
let fileQuery = file.response ? file.response.result : file
|
||||
let fileName = fileQuery.fileName
|
||||
let index1 = fileName.lastIndexOf('.')
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
||||
// if (fileSuffix === '.pdf') {
|
||||
// window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id+'&userName='+this.userInfo().username))
|
||||
// } else if (fileSuffix === '.docx') {
|
||||
// let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
// window.open(url, '_blank')
|
||||
// } else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
||||
// let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
// window.open(url, '_blank')
|
||||
// } else {
|
||||
// downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
||||
// }
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.ant-upload-list-item-name {
|
||||
color: rgba(0, 0, 0, 0.65) !important;
|
||||
}
|
||||
|
||||
.action-upload {
|
||||
font-size: 67px;
|
||||
color: #c0c4cc;
|
||||
}
|
||||
|
||||
.uploadFile {
|
||||
|
||||
}
|
||||
</style>
|
||||
@@ -14,11 +14,11 @@
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('recordstatus')">
|
||||
{{$t('recordstatus')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="recordstatus">
|
||||
<a-form-model-item class="itemModel" prop="bazt">
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.bazt"
|
||||
:placeholder="$t('PleaseSelect')+$t('recordstatus')"
|
||||
:type="'select'"
|
||||
@@ -29,17 +29,17 @@
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('filingtime')">
|
||||
{{$t('filingtime')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="filingtime">
|
||||
<a-form-model-item class="itemModel" prop="batjsj">
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('filingtime')"
|
||||
@change="dateChange({db_field_name:'batjs'})"
|
||||
@change="dateChange({db_field_name:'batjsj'})"
|
||||
format="YYYY-MM-DD"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.batjs"
|
||||
v-model="formInline.batjsj"
|
||||
:disabled="false"
|
||||
style="width: 100%"/>
|
||||
</a-form-model-item>
|
||||
@@ -76,9 +76,25 @@ export default {
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
formInline: {
|
||||
batjs:'',
|
||||
bazt:'',
|
||||
batjsj:'',
|
||||
bz:'',
|
||||
},
|
||||
rules: {
|
||||
bazt: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('recordstatus') + this.$t('cannotEmpty'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
batjsj: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('filingtime') + this.$t('cannotEmpty'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
// listConfirmation: [
|
||||
// {
|
||||
// required: true,
|
||||
@@ -129,7 +145,7 @@ export default {
|
||||
// }
|
||||
// ]
|
||||
},
|
||||
ids: []
|
||||
ids: ''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -137,11 +153,12 @@ export default {
|
||||
methods: {
|
||||
edit(row) {
|
||||
if(row instanceof Array){
|
||||
this.ids = row
|
||||
this.ids = row.join(',')
|
||||
}else{
|
||||
this.formInline.bazt = row.bazt
|
||||
this.formInline.batjs = row.batjs
|
||||
this.formInline.bazt = row.bazt ? row.bazt : undefined
|
||||
this.formInline.batjsj = row.batjsj
|
||||
this.formInline.bz = row.bz
|
||||
this.ids = row.id
|
||||
}
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
@@ -153,12 +170,10 @@ export default {
|
||||
if (valid) {
|
||||
let query = {
|
||||
...this.formInline,
|
||||
id:this.ids.join(',')
|
||||
ids:this.ids
|
||||
}
|
||||
this.confirmLoading = true
|
||||
postAction('ota/otaBaSjList/batchRecord', {
|
||||
recordList :query
|
||||
}).then((res) => {
|
||||
postAction('ota/otaBaSjList/batchRecord', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
@@ -174,9 +189,10 @@ export default {
|
||||
},
|
||||
handleCancel() {
|
||||
this.formInline = {
|
||||
batjs:''
|
||||
}
|
||||
this.ids = []
|
||||
bazt:'',
|
||||
batjsj:'',
|
||||
bz:'',}
|
||||
this.ids = ''
|
||||
this.visible = false
|
||||
},
|
||||
dateChange(item) {
|
||||
|
||||
@@ -274,14 +274,14 @@ export default {
|
||||
align: 'left',
|
||||
width: 140,
|
||||
ellipsis: true,
|
||||
dataIndex: 'bazt'
|
||||
dataIndex: 'bazt_dictText'
|
||||
},
|
||||
{
|
||||
title: this.$t('filingtime'),
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 140,
|
||||
dataIndex: 'batjs'
|
||||
dataIndex: 'batjsj'
|
||||
},
|
||||
{
|
||||
title: this.$t('createTime'),
|
||||
@@ -393,6 +393,8 @@ export default {
|
||||
},
|
||||
// 创建车型
|
||||
createvehicleandfunctionrecords() {
|
||||
localStorage.removeItem('otaId')
|
||||
localStorage.removeItem('otaIdT')
|
||||
this.$router.push({
|
||||
path: '/upgradeactivityrecord',
|
||||
query: {}
|
||||
|
||||
+17
-7
@@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<!-- 第五页 -->
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -46,11 +46,11 @@
|
||||
</span>
|
||||
<!-- 升级前-->
|
||||
<span slot="preupgrade" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')"></a-input>
|
||||
</span>
|
||||
<!-- 升级后-->
|
||||
<span slot="afterupgrade" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')"></a-input>
|
||||
</span>
|
||||
<!-- 操作列-->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
@@ -72,13 +72,15 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
|
||||
export default {
|
||||
name: 'beupgradedonline',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -206,12 +208,20 @@ export default {
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
url: {
|
||||
exportData: '/ota/otaBaSjSjfzbh/exportData',
|
||||
importZipUrl: '/ota/otaBaSjSjfzbh/importData',//导入
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaSjSjfzbh/exportTemplate', '本次升级的驾驶辅助功能与参数变化' + '.zip', {})
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
|
||||
+7
-284
@@ -2,29 +2,14 @@
|
||||
<div class="box">
|
||||
<a-row :gutter="24" style='margin-top: 30px'>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="box-title-text" v-for='(item,index) in dataSource'>
|
||||
<div class="title-text">
|
||||
<span class="dot"></span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('parameterTemplate')">{{$t('parameterTemplate')}}</span>
|
||||
:title="item.sjzt">{{item.sjzt_dictText}}</span>
|
||||
<div class='titlebox'>
|
||||
<span class='titlebox-text'>提交审批</span>
|
||||
<span class='titlebox-text-text'>2023-02-02 14:13:21</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24" style='margin-top: 30px'>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="dot"></span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('parameterTemplate')">{{$t('parameterTemplate')}}</span>
|
||||
<div class='titlebox'>
|
||||
<span class='titlebox-text'>提交审批</span>
|
||||
<span class='titlebox-text-text'>2023-02-02 14:13:21</span>
|
||||
<span class='titlebox-text'>{{item.sjzt_dictText}}</span>
|
||||
<span class='titlebox-text-text'>{{item.updateTime}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -47,70 +32,7 @@
|
||||
return {
|
||||
dataSource: [],
|
||||
loading: false,
|
||||
url: {
|
||||
list: '/todoCenter/projectProcess/doneProcess'
|
||||
},
|
||||
queryParam: {},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('RelatedItems'),
|
||||
align: 'left',
|
||||
dataIndex: 'projectName',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'RelatedItems' },
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('standardInformation'),
|
||||
align: 'left',
|
||||
dataIndex: 'standardInfo',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'standardInformation' },
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('taskType'),
|
||||
align: 'left',
|
||||
dataIndex: 'flowTypeShow',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('Sponsor'),
|
||||
align: 'left',
|
||||
dataIndex: 'createBy',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('CurrentProcessor'),
|
||||
align: 'left',
|
||||
dataIndex: 'assigneeName',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('TaskCutOffTime'),
|
||||
align: 'left',
|
||||
dataIndex: 'endTime',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('taskStatus'),
|
||||
align: 'left',
|
||||
dataIndex: 'statusShow',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('operation'),
|
||||
align: 'left',
|
||||
fixed: 'right',
|
||||
width: 120,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
selectedRowKeys: [],
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
@@ -124,213 +46,14 @@
|
||||
back(){
|
||||
this.$emit('historicalrecordup')
|
||||
},
|
||||
monitoringProcessClick(row){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/processDetails',
|
||||
query: {
|
||||
prcNum: row.prcNum,
|
||||
prcType:row.flowType,
|
||||
prcId:row.actiProcInstId,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
RelatedItemsClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
query: {
|
||||
id: item.projectLibraryId,
|
||||
projectName: item.projectName,
|
||||
projectNameId: item.projectNameId,
|
||||
targetMarket: item.targetMarket,
|
||||
studioEngineer:item.studioEngineer,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
standardInformationClick(item){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: item.bussDocumentLibraryId,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
viewClick(row) {
|
||||
let query = {}
|
||||
row.router = this.$route.path
|
||||
if (row.flowType == '1') {
|
||||
query = {
|
||||
taskDefinitionKey:row.taskDefinitionKey,
|
||||
taskIds:row.taskId,
|
||||
prcType:row.flowType,
|
||||
prcNum:row.prcNum,
|
||||
isTrue:false,
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/handshakeProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '10'){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
query: {
|
||||
id: row.projectLibraryId,
|
||||
projectName: row.projectName,
|
||||
projectNameId: row.projectNameId,
|
||||
targetMarket: row.targetMarket,
|
||||
studioEngineer:row.studioEngineer,
|
||||
type:'102',
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '2'){
|
||||
row.taskId = row.taskId + ''
|
||||
if (row.taskId.length > 30) {
|
||||
row.taskId = ''
|
||||
}
|
||||
query = {
|
||||
router: row.router,
|
||||
taskIds:row.taskId,
|
||||
actiProcInstId: row.actiProcInstId,
|
||||
projectTaskInventoryId: row.projectLawsInventoryId,
|
||||
projectLibraryId:row.projectLibraryId,
|
||||
id: row.projectLibraryId,
|
||||
studioEngineer: row.studioEngineer,
|
||||
serialNumber: row.serialNumber,
|
||||
TaskKey: row.taskDefinitionKey,
|
||||
isDisplay: false,
|
||||
flowType: 2,
|
||||
Sponsor: 'designInitiatorName',
|
||||
personLiable: 'designDutyName',
|
||||
typeOfDeliverables: 'designDeliverableTypeName',
|
||||
deliverableTemplate: 'designDeliverableTemplate',
|
||||
DueDate: 'designDueDate',
|
||||
remarks: 'designRemark',
|
||||
projectName: row.projectName,
|
||||
targetMarket: row.targetMarket,
|
||||
projectNameId: row.projectNameId,
|
||||
primaryKeyId: row.primaryKeyId,
|
||||
PersonChargeFeedback: row.personChargeFeedback
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/taskListProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '3'){
|
||||
row.taskId = row.taskId + ''
|
||||
if (row.taskId.length > 30) {
|
||||
row.taskId = ''
|
||||
}
|
||||
query = {
|
||||
router: row.router,
|
||||
taskIds:row.taskId,
|
||||
actiProcInstId: row.actiProcInstId,
|
||||
projectTaskInventoryId: row.projectLawsInventoryId,
|
||||
studioEngineer: row.studioEngineer,
|
||||
projectLibraryId:row.projectLibraryId,
|
||||
serialNumber: row.serialNumber,
|
||||
TaskKey: row.taskDefinitionKey,
|
||||
flowType: 3,
|
||||
isDisplay: false,
|
||||
id: row.projectLibraryId,
|
||||
Sponsor: 'prehomoInitiatorName',
|
||||
personLiable: 'prehomoDutyName',
|
||||
typeOfDeliverables: 'prehomoDeliverableTypeName',
|
||||
deliverableTemplate: 'prehomoDeliverableTemplate',
|
||||
DueDate: 'prehomoDueDate',
|
||||
remarks: 'prehomoRemark',
|
||||
projectName: row.projectName,
|
||||
targetMarket: row.targetMarket,
|
||||
projectNameId: row.projectNameId,
|
||||
primaryKeyId: row.primaryKeyId,
|
||||
PersonChargeFeedback: row.personChargeFeedback
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/taskListProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '4'){
|
||||
row.taskId = row.taskId + ''
|
||||
if (row.taskId.length > 30) {
|
||||
row.taskId = ''
|
||||
}
|
||||
query = {
|
||||
router: row.router,
|
||||
taskIds: row.taskId,
|
||||
actiProcInstId: row.actiProcInstId,
|
||||
id: row.projectLibraryId,
|
||||
projectLibraryId: row.projectLibraryId,
|
||||
studioEngineer: row.studioEngineer,
|
||||
serialNumber: row.serialNumber,
|
||||
projectTaskInventoryId: row.projectLawsInventoryId,
|
||||
TaskKey: row.taskDefinitionKey,
|
||||
flowType: 4,
|
||||
isDisplay: false,
|
||||
Sponsor: 'verifyInitiatorName',
|
||||
personLiable: 'verifyDutyName',
|
||||
typeOfDeliverables: 'verifyDeliverableTypeName',
|
||||
deliverableTemplate: 'verifyDeliverableTemplate',
|
||||
DueDate: 'verifyDueDate',
|
||||
remarks: 'verifyRemark',
|
||||
projectName: row.projectName,
|
||||
targetMarket: row.targetMarket,
|
||||
projectNameId: row.projectNameId,
|
||||
primaryKeyId: row.primaryKeyId,
|
||||
PersonChargeFeedback: row.personChargeFeedback
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/taskListProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}
|
||||
},
|
||||
searchQuery(value) {
|
||||
this.queryParam = value
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
},
|
||||
searchReset() {
|
||||
this.queryParam = {}
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
},
|
||||
pageOnChange(page) {
|
||||
this.pageNo = page
|
||||
this.getList()
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.getList()
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
...queryParam
|
||||
otaId:localStorage.getItem('otaId')
|
||||
}
|
||||
this.loading = true
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
getAction('ota/otaBaSjLsjl/list', query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
this.dataSource = res.result.records || []
|
||||
this.total = res.result.total
|
||||
this.dataSource = res.result || []
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
|
||||
+1
@@ -1,4 +1,5 @@
|
||||
<template>
|
||||
<!-- 第七页 -->
|
||||
<div class="box">
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model class="formAdd" ref="ruleForm">
|
||||
|
||||
+69
-15
@@ -1,17 +1,17 @@
|
||||
<template>
|
||||
<!-- 第二页 -->
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
</div>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model class="formAdd" ref="ruleForm">
|
||||
<a-form-model class="formAdd" ref="ruleForm" :model="formInline">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
@@ -21,6 +21,7 @@
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model="formInline.zsl"
|
||||
:placeholder="$t('PleaseSelect')"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
@@ -33,11 +34,10 @@
|
||||
{{$t('dateofproduction')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dateofproduction">
|
||||
<a-date-picker class="box-input"
|
||||
<a-range-picker class="box-input"
|
||||
@change="change"
|
||||
:placeholder="$t('PleaseSelect')+$t('dateofproduction')"
|
||||
@change="dateChange({db_field_name:'dateofproduction'})"
|
||||
format="YYYY-MM-DD"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.dateofproduction"
|
||||
:disabled="false"
|
||||
style="width: 100%"/>
|
||||
@@ -53,7 +53,7 @@
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="VINcodelist">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('VINcodelist')"
|
||||
v-model="formInline.VINcodelist"
|
||||
v-model="formInline.vinList"
|
||||
:rows="4"/>
|
||||
</a-form-model-item>
|
||||
<!-- <a-form-model-item class="itemModel" prop="VINcodelist">-->
|
||||
@@ -79,14 +79,16 @@
|
||||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
|
||||
}}
|
||||
</a-button>
|
||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="bootom-button">
|
||||
<a-button class='btn' style='margin-right: 50px'>{{$t('preservation')}}</a-button>
|
||||
<a-button class='btn' style='margin-right: 50px' @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
@@ -94,32 +96,84 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import moment from 'moment'
|
||||
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
export default {
|
||||
name: 'basicInformation',
|
||||
components:{
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
confirmLoading: false,
|
||||
disabled: false,
|
||||
formInline:{}
|
||||
formInline:{},
|
||||
url: {
|
||||
exportData: '/ota/otaBaSjSjmbcl/exportData',
|
||||
importZipUrl: '/ota/otaBaSjSjmbcl/importData',//导入
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaSjSjmbcl/exportTemplate', '本次升级目标车辆' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
let otaId=localStorage.getItem('otaId')
|
||||
if(otaId==null){
|
||||
otaId=''
|
||||
}
|
||||
getAction('/ota/otaBaSjSjmbcl/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
|
||||
if(res.code==200){
|
||||
this.formInline.zsl=res.result.zsl
|
||||
this.formInline.vinList=res.result.vinList
|
||||
this.formInline.dateofproduction=[]
|
||||
this.formInline.dateofproduction.push(res.result.scrqks)
|
||||
this.formInline.dateofproduction.push(res.result.scrqjs)
|
||||
this.$forceUpdate()
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
save(){
|
||||
|
||||
let obj={}
|
||||
obj.otaId=localStorage.getItem('otaId')
|
||||
obj.zsl = this.formInline.zsl
|
||||
if(this.formInline.dateofproduction){
|
||||
obj.scrqks = this.formInline.dateofproduction[0]
|
||||
obj.scrqjs = this.formInline.dateofproduction[1]
|
||||
}else{
|
||||
obj.scrqks=''
|
||||
obj.scrqjs =''
|
||||
}
|
||||
|
||||
obj.vinList = this.formInline.vinList
|
||||
postAction('/ota/otaBaSjSjmbcl/add',obj).then(res=>{
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('upgradeRequirementsdown')
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('upgradeRequirementsup')
|
||||
},
|
||||
dateChange(item) {
|
||||
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
change(){
|
||||
this.$forceUpdate()
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
|
||||
+87
-44
@@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<!-- 第四页 -->
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -22,40 +22,54 @@
|
||||
:columns="columns"
|
||||
style="margin-bottom: 20px"
|
||||
>
|
||||
<!-- 配置情况-->
|
||||
<span slot="configuration" slot-scope="text,record">
|
||||
<a-radio-group>
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<!-- 可升级-->
|
||||
<span slot="whetheritcanbeupgraded" slot-scope="text,record">
|
||||
<a-radio-group>
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<!-- 自动化级别-->
|
||||
<span slot="drivingautomationlevel" slot-scope="text,record">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disable"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<span slot="systemname" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<!-- 升级前-->
|
||||
<span slot="preupgrade" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjqbgcs"></a-input>
|
||||
</span>
|
||||
<!-- 升级后-->
|
||||
<span slot="afterupgrade" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjhbgcs"></a-input>
|
||||
</span>
|
||||
<span slot="nameoftheupgradedelectroniccontroller" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjkzqmc" ></a-input>
|
||||
</span>
|
||||
<span slot="adaptivehardwareversion" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<span slot="beforethesoftwareversionupgraded" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc" ></a-input>
|
||||
</span>
|
||||
<span slot="afterthesoftwareversionupgraded" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<span slot="beforetheOSversionupgraded" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<span slot="aftertheoperatingsystemversionupgraded" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<span slot="softwaredevelopmententerprise" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc" ></a-input>
|
||||
</span>
|
||||
<span slot="initialpackageforintegrityinflammatorydata" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<span slot="upgradepackageintegrityverificationdata" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc" ></a-input>
|
||||
</span>
|
||||
<span slot="upgradepackagesize" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<span slot="differentialupgradeornot" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input>
|
||||
</span>
|
||||
<!-- 操作列-->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation">{{$t('addcontroller')}}</a>
|
||||
<a class="text-operation">{{$t('delete')}}</a>
|
||||
<a class="text-operation" @click="addlineAtBot">{{$t('addcontroller')}}</a>
|
||||
<a class="text-operation" @click="deleteData(record)">{{$t('delete')}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<div>
|
||||
@@ -71,20 +85,20 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
|
||||
export default {
|
||||
name: 'beupgradedonline',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dataSource: [
|
||||
{
|
||||
key:1,
|
||||
functionname:'ceshi',
|
||||
}
|
||||
],
|
||||
loading: false,
|
||||
@@ -95,7 +109,9 @@ export default {
|
||||
align: 'left',
|
||||
dataIndex: 'systemname',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'systemname' },
|
||||
|
||||
},
|
||||
{
|
||||
title: this.$t('adjustmentofchangedBulletinparameters'),
|
||||
@@ -134,77 +150,89 @@ export default {
|
||||
align: 'left',
|
||||
dataIndex: 'nameoftheupgradedelectroniccontroller',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'nameoftheupgradedelectroniccontroller' },
|
||||
|
||||
},
|
||||
{
|
||||
title: this.$t('adaptivehardwareversion'),
|
||||
align: 'left',
|
||||
dataIndex: 'adaptivehardwareversion',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'adaptivehardwareversion' },
|
||||
},
|
||||
{
|
||||
title: this.$t('beforethesoftwareversionupgraded'),
|
||||
align: 'left',
|
||||
dataIndex: 'beforethesoftwareversionupgraded',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'beforethesoftwareversionupgraded' },
|
||||
},
|
||||
{
|
||||
title: this.$t('afterthesoftwareversionupgraded'),
|
||||
align: 'left',
|
||||
dataIndex: 'afterthesoftwareversionupgraded',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'afterthesoftwareversionupgraded' },
|
||||
},
|
||||
{
|
||||
title: this.$t('beforetheOSversionupgraded'),
|
||||
align: 'left',
|
||||
dataIndex: 'beforetheOSversionupgraded',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'beforetheOSversionupgraded' },
|
||||
},
|
||||
{
|
||||
title: this.$t('aftertheoperatingsystemversionupgraded'),
|
||||
align: 'left',
|
||||
dataIndex: 'aftertheoperatingsystemversionupgraded',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'aftertheoperatingsystemversionupgraded' },
|
||||
},
|
||||
{
|
||||
title: this.$t('softwaredevelopmententerprise'),
|
||||
align: 'left',
|
||||
dataIndex: 'softwaredevelopmententerprise',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'softwaredevelopmententerprise' },
|
||||
},
|
||||
{
|
||||
title: this.$t('initialpackageforintegrityinflammatorydata'),
|
||||
align: 'left',
|
||||
dataIndex: 'initialpackageforintegrityinflammatorydata',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'initialpackageforintegrityinflammatorydata' },
|
||||
},
|
||||
{
|
||||
title: this.$t('upgradepackageintegrityverificationdata'),
|
||||
align: 'left',
|
||||
dataIndex: 'upgradepackageintegrityverificationdata',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'upgradepackageintegrityverificationdata' },
|
||||
},
|
||||
{
|
||||
title: this.$t('upgradepackagesize'),
|
||||
align: 'left',
|
||||
dataIndex: 'upgradepackagesize',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'upgradepackagesize' },
|
||||
},
|
||||
{
|
||||
title: this.$t('differentialupgradeornot'),
|
||||
align: 'left',
|
||||
dataIndex: 'differentialupgradeornot',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'differentialupgradeornot' },
|
||||
},
|
||||
]
|
||||
},
|
||||
@@ -216,12 +244,20 @@ export default {
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
url: {
|
||||
exportData: '/ota/otaBaSjSjxtbh/exportData',
|
||||
importZipUrl: '/ota/otaBaSjSjxtbh/importData',//导入
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaSjSjxtbh/exportTemplate', '本次升级的系统名称与参数变化' + '.zip', {})
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
this.$refs.uploadFile.visible = true
|
||||
@@ -268,6 +304,13 @@ export default {
|
||||
next(){
|
||||
this.$emit('upgradedonlinedown')
|
||||
},
|
||||
addlineAtBot(){
|
||||
let obj={}
|
||||
this.dataSource.push(obj)
|
||||
},
|
||||
deleteData(record){
|
||||
this.dataSource.splice(this.dataSource.indexOf(record),1)
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
|
||||
+93
-24
@@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<!-- 第三页 -->
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -16,10 +16,13 @@
|
||||
<span class='sider-span1'>{{$t('upgradePurpose')}}</span>
|
||||
</a-layout-sider>
|
||||
<a-layout-content style='border: black solid 1px;border-left: none;border-bottom: none;'>
|
||||
<j-dict-select-tag class="box-input"
|
||||
<j-multi-select-tag class="box-input"
|
||||
v-model="form.sjmd"
|
||||
@change="update"
|
||||
:disabled="disable"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:dictCode="'uipgrade_purpose'"
|
||||
:triggerChange="false"/>
|
||||
</a-layout-content>
|
||||
</a-layout>
|
||||
@@ -35,25 +38,25 @@
|
||||
</a-layout-content>
|
||||
<a-layout-content style='width: 5.5%'>
|
||||
<span class='content-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.sfbgcs">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='content-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.sjxnbh">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='content-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.fhgd">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='content-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.zdjsxg">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
@@ -75,7 +78,7 @@
|
||||
</div>
|
||||
<div class='layout-box-second'>
|
||||
<span class='box-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.jrxxg">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
@@ -84,40 +87,46 @@
|
||||
<j-dict-select-tag class="box-input"
|
||||
style='margin-top: 2px'
|
||||
:disabled="disable"
|
||||
v-model="form.zxsj"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
dictCode="conditions_upgrades"
|
||||
:triggerChange="false"/>
|
||||
</span>
|
||||
<span class='box-text'>
|
||||
<j-multi-select-tag class="box-input"
|
||||
v-model="form.aqjz"
|
||||
style='margin-top: 2px'
|
||||
:disabled="disable"
|
||||
dictCode="upgrade_failed"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</span>
|
||||
<span class='box-text'>
|
||||
<j-dict-select-tag class="box-input"
|
||||
style='margin-top: 2px'
|
||||
:disabled="disable"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</span>
|
||||
<span class='box-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.sfyxaq">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='box-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.yhqr">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='box-text'>
|
||||
<j-dict-select-tag class="box-input"
|
||||
<j-multi-select-tag class="box-input"
|
||||
style='margin-top: 2px'
|
||||
:disabled="disable"
|
||||
v-model="form.sjbcs"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
dictCode="package_test"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</span>
|
||||
<span class='box-text' style='border-bottom: black solid 1px'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="form.aqkkx">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
@@ -129,7 +138,7 @@
|
||||
</div>
|
||||
</a-layout>
|
||||
<div class="bootom-button">
|
||||
<a-button style="margin-right:50px">{{$t('preservation')}}</a-button>
|
||||
<a-button style="margin-right:50px" @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
@@ -138,13 +147,15 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
|
||||
export default {
|
||||
name: 'beupgradedonline',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -154,6 +165,10 @@ export default {
|
||||
functionname:'ceshi',
|
||||
}
|
||||
],
|
||||
url: {
|
||||
exportData: '/ota/otaBaSjSjyxpg/exportData',
|
||||
importZipUrl: '/ota/otaBaSjSjyxpg/importData',//导入
|
||||
},
|
||||
loading: false,
|
||||
disable:false,
|
||||
columns: [
|
||||
@@ -283,12 +298,31 @@ export default {
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
form:{
|
||||
sjmd:'',
|
||||
fhgd:1,
|
||||
zdjsxg:2,
|
||||
sfyxaq:2,
|
||||
yhqr:1,
|
||||
aqkkx:1,
|
||||
zxsj:2,
|
||||
aqjz:'2',
|
||||
sjbcs:'3,4'
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
update(){
|
||||
this.$forceUpdate()
|
||||
},
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaSjSjyxpg/exportTemplate', '升级影响评估' + '.zip', {})
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
this.$refs.uploadFile.visible = true
|
||||
@@ -329,10 +363,45 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
let otaId=localStorage.getItem('otaId')
|
||||
if(otaId==null){
|
||||
otaId=''
|
||||
}
|
||||
getAction('/ota/otaBaSjSjyxpg/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
|
||||
if(res.code==200){
|
||||
this.form=res.result==null ? {
|
||||
sjmd:'',
|
||||
fhgd:1,
|
||||
zdjsxg:2,
|
||||
sfyxaq:2,
|
||||
yhqr:1,
|
||||
aqkkx:1,
|
||||
zxsj:2,
|
||||
aqjz:'2',
|
||||
sjbcs:'3,4'
|
||||
} : res.result
|
||||
}
|
||||
})
|
||||
},
|
||||
save(){
|
||||
|
||||
this.form.otaId=localStorage.getItem('otaId')
|
||||
postAction('/ota/otaBaSjSjyxpg/add',this.form).then(res=>{
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
console.log(res);
|
||||
})
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('safetyPrecautionsup')
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('safetyPrecautionsdown')
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
|
||||
+151
-48
@@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<!-- 第一页 -->
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -19,11 +19,17 @@
|
||||
<span class="title-text-text" :title="$t('selectTheVehicleTemplate')">{{$t('selectTheVehicleTemplate')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<j-dict-select-tag class="box-input"
|
||||
<a-select :disabled="disabled" class="box-input" v-model="form.cxmb" allowClear :placeholder="$t('PleaseSelect')" @change="update">
|
||||
<a-select-option v-for="(item , key ) in selectListMb" :key="key" :value="item.id" >
|
||||
{{ item.cpdjbh }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<!-- <j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model="form.cxmb"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false"/> -->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -33,45 +39,34 @@
|
||||
<span class="title-text-text" :title="$t('upgraderecordnumber')">{{$t('upgraderecordnumber')}}</span>
|
||||
</div>
|
||||
<div class="title-text-add-input">
|
||||
<span class="title-text-text">中文</span>
|
||||
<!-- <span class="title-text-text">中文</span> -->
|
||||
<a-input class="box-input" v-model="form.babh" :placeholder="$t('pleaseEnter')" disabled style="width:93%"></a-input>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('registrationnumber')">{{$t('registrationnumber')}}</span>
|
||||
<span class="title-text-text" :title="$t('theNameOfFirm')">{{$t('theNameOfFirm')}}</span>
|
||||
</div>
|
||||
<div class="title-text-add-input">
|
||||
<span class="title-text-text">中文</span>
|
||||
<!-- <span class="title-text-text">中文</span> -->
|
||||
<a-input class="box-input" v-model="form.qymc" :placeholder="$t('pleaseEnter')" disabled style="width:93%"></a-input>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('Modelandfunctionrecord')">{{$t('Modelandfunctionrecord')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('noticebatch')">{{$t('noticebatch')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-select :disabled="disabled" class="box-input" v-model="form.bapc" allowClear :placeholder="$t('PleaseSelect')" @change="changeId">
|
||||
<a-select-option v-for="(item , key ) in selectListPc" :key="key" :value="item.id" >
|
||||
{{ item.ggpc }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -81,11 +76,8 @@
|
||||
<span class="title-text-text" :title="$t('producttrademark')">{{$t('producttrademark')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" v-model="form.cpsb"></a-input>
|
||||
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -95,11 +87,8 @@
|
||||
<span class="title-text-text" :title="$t('productname')">{{$t('productname')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" v-model="form.cpmc"></a-input>
|
||||
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -109,11 +98,8 @@
|
||||
<span class="title-text-text" :title="$t('productModel')">{{$t('productModel')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" v-model="form.cpxh"></a-input>
|
||||
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -122,45 +108,162 @@
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('Vehicledynamictype')">{{$t('Vehicledynamictype')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
<a-form-model-item class="itemModel" style="width: 38%">
|
||||
<!-- <j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
@change="projectNameChange"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false"
|
||||
v-model="form.Vehicledynamictype"/> -->
|
||||
<a-select class="box-input" v-model="form.dllx1" :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="changeSelect($event,target)">
|
||||
<a-select-option v-for="(item, key) in projectNameList1"
|
||||
:key="key"
|
||||
:value="item">
|
||||
{{ item }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item class="itemModel" style="width: 40%;margin-left:-9px">
|
||||
<a-select v-model="form.dllx2" class="box-input" :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="update">
|
||||
<a-select-option v-for="(item, key) in projectNameList2"
|
||||
:key="key"
|
||||
:value="item">
|
||||
{{ item }}
|
||||
<!-- <span style="display: inline-block;width: 100%" :title=" item.projectName ">
|
||||
{{ item.projectName}}
|
||||
</span> -->
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
|
||||
</a-row>
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="bootom-button">
|
||||
<a-button style="margin-right:50px">{{$t('preservation')}}</a-button>
|
||||
<a-button style="margin-right:50px" @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
|
||||
export default {
|
||||
name: 'basicInformation',
|
||||
components:{
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
confirmLoading: false,
|
||||
disabled: false,
|
||||
form:{
|
||||
qymc:'安徽江淮汽车集团股份有限公司'
|
||||
},
|
||||
url: {
|
||||
exportData: '/ota/otaBaSjSjmbcx/exportData',
|
||||
importZipUrl: '/ota/otaBaSjSjmbcx/importData',//导入
|
||||
},
|
||||
projectNameList1:['传统动力汽车','节能汽车','新能源汽车','其他'],
|
||||
projectNameList2:[],
|
||||
selectListPc:[],
|
||||
selectListMb:[],
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.getSelect()
|
||||
this.getData()
|
||||
},
|
||||
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaSjSjmbcx/exportTemplate', '升级目标车型' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
let otaId=localStorage.getItem('otaId')
|
||||
if(otaId==null){
|
||||
otaId=''
|
||||
}
|
||||
getAction('/ota/otaBaSjSjmbcx/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
|
||||
if(res.code == 200){
|
||||
this.form=res.result ==null?{}:res.result
|
||||
}
|
||||
})
|
||||
},
|
||||
save(){
|
||||
let otaId=localStorage.getItem('otaId')
|
||||
if(otaId==null){
|
||||
otaId=''
|
||||
}
|
||||
postAction('/ota/otaBaSjSjmbcx/add',{otaId:otaId,...this.form}).then(res=>{
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
localStorage.setItem('otaId', res.result.otaId)
|
||||
})
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('basicInformationForm')
|
||||
},
|
||||
getSelect(){
|
||||
getAction('/ota/otaBaCxList/list').then(res=>{
|
||||
if(res.code==200){
|
||||
this.selectListPc=[]
|
||||
res.result.forEach(item=>{
|
||||
let obj={}
|
||||
obj=item
|
||||
this.selectListPc.push(obj)
|
||||
})
|
||||
}
|
||||
})
|
||||
getAction('/ota/otaBaSjList/list').then(res=>{
|
||||
if(res.code==200){
|
||||
this.selectListMb=[]
|
||||
res.result.forEach(item=>{
|
||||
let obj={}
|
||||
obj.id=item.id
|
||||
obj.cpdjbh=item.cpdjbh
|
||||
this.selectListMb.push(obj)
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
changeSelect(target){
|
||||
this.form.dllx2=undefined
|
||||
if(target =='传统动力汽车'){
|
||||
this. projectNameList2=['汽油','柴油']
|
||||
}else if (target =='节能汽车'){
|
||||
this. projectNameList2=['混合动力','天然气','甲醇','其他']
|
||||
}else if (target =='新能源汽车'){
|
||||
this. projectNameList2=['纯电动','插电式混合动力','燃料电池']
|
||||
}else{
|
||||
this. projectNameList2=['其他']
|
||||
}
|
||||
|
||||
},
|
||||
changeId(value,option){
|
||||
this.selectListPc.map(item=>{
|
||||
if(item.id==value){
|
||||
this.form.cpsb = item.cpsb
|
||||
this.form.cpmc = item.cpmc
|
||||
this.form.cpxh = item.cpxh
|
||||
this.form.babh = item.cpdjbh
|
||||
}
|
||||
})
|
||||
this.$forceUpdate()
|
||||
},
|
||||
update(){
|
||||
this.$forceUpdate()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
+158
-54
@@ -1,82 +1,161 @@
|
||||
<template>
|
||||
<!-- 第六页 -->
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
</div>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model class="formAdd" ref="ruleForm">
|
||||
<h1 style='margin-left: 20%;'>{{$t('beforetheupgrade')}}</h1>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('totalquantity')">{{$t('totalquantity')}}</span>
|
||||
<span class="title-text-text" :title="$t('pgradepurpose')">{{$t('pgradepurpose')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<a-form-model-item class="itemModel" prop="sjmd">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"></a-input>
|
||||
v-model='formInline.sjmd'
|
||||
:placeholder="$t('pleaseEnter')"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="title-text-text" :title="$t('dateofproduction')">
|
||||
{{$t('dateofproduction')}}</span>
|
||||
<span class="title-text-text" :title="$t('vehiclefunctionalityasaresultofsoftwareupgradeactivities')">{{$t('vehiclefunctionalityasaresultofsoftwareupgradeactivities')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dateofproduction">
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('dateofproduction')"
|
||||
@change="dateChange({db_field_name:'dateofproduction'})"
|
||||
format="YYYY-MM-DD"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.dateofproduction"
|
||||
:disabled="false"
|
||||
style="width: 100%"/>
|
||||
<a-form-model-item class="itemModel" prop="gxbh">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model='formInline.gxbh'
|
||||
:placeholder="$t('pleaseEnter')"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="title-text-text" :title="$t('VINcodelist')">
|
||||
{{$t('VINcodelist')}}</span>
|
||||
<span class="title-text-text" :title="$t('estimatedupgradeexecutionTime')">{{$t('estimatedupgradeexecutionTime')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="VINcodelist">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('VINcodelist')"
|
||||
v-model="formInline.VINcodelist"
|
||||
:rows="4"/>
|
||||
<a-form-model-item class="itemModel" prop="sjsj">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model='formInline.sjsj'
|
||||
:placeholder="$t('pleaseEnter')"></a-input>
|
||||
</a-form-model-item>
|
||||
<!-- <a-form-model-item class="itemModel" prop="VINcodelist">-->
|
||||
<!-- <a-button type="primary" class="button-text"-->
|
||||
<!-- @click="clickButtonToUpload('VINcodelist')">-->
|
||||
<!-- {{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' ||-->
|
||||
<!-- formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')-->
|
||||
<!-- }}-->
|
||||
<!-- </a-button>-->
|
||||
<!-- </a-form-model-item>-->
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="title-text-text"></span>
|
||||
<span class="title-text-text" :title="$t('upgradeexecutionperiodasksifthevehicleisusable')">{{$t('upgradeexecutionperiodasksifthevehicleisusable')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="VINcodelist">
|
||||
<a-button type="primary" class="button-text"
|
||||
@click="clickButtonToUpload('VINcodelist')">
|
||||
{{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' ||
|
||||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
|
||||
<a-form-model-item class="itemModel" prop="sjky">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model='formInline.sjky'
|
||||
:placeholder="$t('pleaseEnter')"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('vehiclefeaturesthatarenotavailableduringupgradeexecution')">{{$t('vehiclefeaturesthatarenotavailableduringupgradeexecution')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="sjbkygn">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model='formInline.sjbkygn'
|
||||
:placeholder="$t('pleaseEnter')"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('vehicleusersafelyperformtheupgrade')">{{$t('vehicleusersafelyperformtheupgrade')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="zdxx">
|
||||
<a-input class="box-input"
|
||||
:disabled="disabled"
|
||||
v-model='formInline.zdxx'
|
||||
:placeholder="$t('pleaseEnter')"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<h1 style='margin-left: 20%;'>{{$t('aftertheupgrade')}}</h1>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('notifiestheuseroftheupgradesuccessorfailure')">{{$t('notifiestheuseroftheupgradesuccessorfailure')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="sjsfcg">
|
||||
<a-radio-group v-model="formInline.sjsfcg">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('informimplementationchanges')">{{$t('informimplementationchanges')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="gzbg">
|
||||
<a-radio-group v-model="formInline.gzbg">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('allupdatestotheusermanualareinformed')">{{$t('allupdatestotheusermanualareinformed')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="gzscnr">
|
||||
<a-radio-group v-model="formInline.gzscnr">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('usernotificationmode')">{{$t('usernotificationmode')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="gzyhfs">
|
||||
<j-multi-select-tag class="box-input"
|
||||
v-model="formInline.gzyhfs"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:dictCode="'user_notification_mode'"
|
||||
:triggerChange="false"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('allupdatestotheusermanualareinformed')">{{$t('allupdatestotheusermanualareinformed')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="gzscnr">
|
||||
<a-button type="primary" @click="clickButtonToUpload('xgwj')" v-model="formInline.xgwj">
|
||||
{{ (formInline.xgwj === 'null' || formInline.xgwj === '' ||
|
||||
formInline.xgwj == null) ? $t('uploadattachment') : $t('viewUploadedFiles')
|
||||
}}
|
||||
</a-button>
|
||||
</a-form-model-item>
|
||||
@@ -90,36 +169,52 @@
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import moment from 'moment'
|
||||
|
||||
export default {
|
||||
name: 'basicInformation',
|
||||
components:{
|
||||
ImportFile,
|
||||
uploadFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
confirmLoading: false,
|
||||
disabled: false,
|
||||
formInline:{}
|
||||
formInline:{},
|
||||
url: {
|
||||
exportData: '/ota/otaBaSjGgnrfs/exportData',
|
||||
importZipUrl: '/ota/otaBaSjGgnrfs/importData',//导入
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
next(){
|
||||
this.$emit('recordparametersdown')
|
||||
methods: {// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaSjGgnrfs/exportTemplate', '用户告知内容及方式' + '.zip', {})
|
||||
},
|
||||
last(){
|
||||
this.$emit('recordparametersup')
|
||||
},
|
||||
dateChange(item) {
|
||||
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
/** 上传文件的回调 */
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push(item.id || data.name)
|
||||
})
|
||||
}
|
||||
/** 赋值给当前对应的表单文件 */
|
||||
this.formInline[this.uploadName] = attIdList.join(',')
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$refs.ruleForm.clearValidate(['fileKey'])
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
@@ -133,6 +228,15 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
next(){
|
||||
this.$emit('recordparametersdown')
|
||||
},
|
||||
last(){
|
||||
this.$emit('recordparametersup')
|
||||
},
|
||||
dateChange(item) {
|
||||
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -140,7 +244,7 @@ export default {
|
||||
<style lang="less" scoped>
|
||||
@import'~@assets/less/common.less';
|
||||
.box {
|
||||
height:500px;
|
||||
margin-bottom: 40px;
|
||||
padding: 0 24px 24px 24px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
@@ -152,14 +256,14 @@ export default {
|
||||
}
|
||||
|
||||
.title-text-add {
|
||||
width: 114px;
|
||||
width: 440px;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
//overflow: hidden;
|
||||
//text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
|
||||
@@ -132,7 +132,7 @@ export default {
|
||||
columnshistory: [
|
||||
{
|
||||
title: this.$t('fillincontent'),
|
||||
dataIndex: 'logContent',
|
||||
dataIndex: 'content',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'content' },
|
||||
@@ -140,7 +140,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: this.$t('module'),
|
||||
dataIndex: 'remarks',
|
||||
dataIndex: 'module',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 100,
|
||||
@@ -148,7 +148,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: this.$t('completedBy'),
|
||||
dataIndex: 'createTime',
|
||||
dataIndex: 'createBy',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 130
|
||||
@@ -174,17 +174,16 @@ export default {
|
||||
},
|
||||
fillintherecordClick(){
|
||||
this.visible = true
|
||||
return
|
||||
this.bussLogList()
|
||||
},
|
||||
bussLogList(val) {
|
||||
let query = {
|
||||
pageNo: this.pageNohistory,
|
||||
pageSize: this.pageSizehistory,
|
||||
paramsReportDetailId: this.paramsReportDetailId
|
||||
otaId:localStorage.getItem('otaId')
|
||||
}
|
||||
this.loading = true
|
||||
getAction('report/detailLog/page', query).then((res) => {
|
||||
getAction('ota/otaBaCxTxjl/page', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSourcehistory = res.result.records
|
||||
this.total = res.result.total
|
||||
|
||||
+254
-57
@@ -2,16 +2,16 @@
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
</div>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model class="formAdd" ref="ruleForm">
|
||||
<a-form-model class="formAdd" ref="ruleForm" :model="form" :rules="rules">
|
||||
<!-- :rules="formRules" -->
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
@@ -19,11 +19,12 @@
|
||||
<span class="title-text-text" :title="$t('selectTheVehicleTemplate')">{{$t('selectTheVehicleTemplate')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
|
||||
<a-select :disabled="disabled" class="box-input" v-model="form.cxmb" allowClear :placeholder="$t('PleaseSelect')" @change="changeId">
|
||||
<a-select-option v-for="(item , key ) in selectList" :key="key" :value="item.id" >
|
||||
{{ item.value }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -32,19 +33,33 @@
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('theNameOfFirm')">{{$t('theNameOfFirm')}}</span>
|
||||
</div>
|
||||
<div class="title-text-add-input">
|
||||
<span class="title-text-text">中文</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-input
|
||||
:max-length="500"
|
||||
:disabled="disabled"
|
||||
class="box-input"
|
||||
:placeholder="$t('pleaseEnter')"
|
||||
v-model="form.qymc">
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('registrationnumber')">{{$t('registrationnumber')}}</span>
|
||||
</div>
|
||||
<div class="title-text-add-input">
|
||||
<span class="title-text-text">中文</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="djbh">
|
||||
|
||||
<a-input
|
||||
:max-length="500"
|
||||
:disabled="disabled"
|
||||
class="box-input"
|
||||
:placeholder="$t('pleaseEnter')"
|
||||
v-model.trim="form.djbh">
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
@@ -57,7 +72,10 @@
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false"
|
||||
dictCode=" product_category"
|
||||
allowClear
|
||||
v-model="form.cplb"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -67,11 +85,13 @@
|
||||
<span class="title-text-text" :title="$t('noticebatch')">{{$t('noticebatch')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input
|
||||
:max-length="500"
|
||||
:disabled="disabled"
|
||||
class="box-input"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
v-model="form.ggpc">
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -81,11 +101,13 @@
|
||||
<span class="title-text-text" :title="$t('producttrademark')">{{$t('producttrademark')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input
|
||||
:max-length="500"
|
||||
:disabled="disabled"
|
||||
class="box-input"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
v-model="form.cpsb">
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -95,12 +117,15 @@
|
||||
<span class="title-text-text" :title="$t('productname')">{{$t('productname')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input
|
||||
:max-length="500"
|
||||
:disabled="disabled"
|
||||
class="box-input"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
v-model="form.cpmc">
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
@@ -109,11 +134,13 @@
|
||||
<span class="title-text-text" :title="$t('productModel')">{{$t('productModel')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input
|
||||
:max-length="500"
|
||||
:disabled="disabled"
|
||||
class="box-input"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
v-model="form.cpxh">
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -122,23 +149,31 @@
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('Vehicledynamictype')">{{$t('Vehicledynamictype')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" style='width: 38%'>
|
||||
<j-dict-select-tag class="box-input"
|
||||
<a-form-model-item class="itemModel" style="width: 38%">
|
||||
<!-- <j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
@change="projectNameChange"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item class="itemModel" style='width: 40%;margin-left: 20px'>
|
||||
<a-select class="box-input" :placeholder="$t('PleaseSelect')"
|
||||
v-model="formInline.projectNameId">
|
||||
<a-select-option v-for="(item, key) in projectNameList"
|
||||
:triggerChange="false"
|
||||
v-model="form.Vehicledynamictype"/> -->
|
||||
<a-select class="box-input" v-model="form.dllx1" :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="changeSelect($event,target)">
|
||||
<a-select-option v-for="(item, key) in projectNameList1"
|
||||
:key="key"
|
||||
:value="item.id">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.projectName ">
|
||||
:value="item">
|
||||
{{ item }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item class="itemModel" style="width: 40%;margin-left:20px">
|
||||
<a-select v-model="form.dllx2" class="box-input" :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="update">
|
||||
<a-select-option v-for="(item, key) in projectNameList2"
|
||||
:key="key"
|
||||
:value="item">
|
||||
{{ item }}
|
||||
<!-- <span style="display: inline-block;width: 100%" :title=" item.projectName ">
|
||||
{{ item.projectName}}
|
||||
</span>
|
||||
</span> -->
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
@@ -150,11 +185,13 @@
|
||||
<span class="title-text-text" :title="$t('communicationTerminal')">{{$t('communicationTerminal')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input"
|
||||
<j-multi-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:dictCode="'communication_terminal'"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false"
|
||||
v-model="form.txzd"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -165,8 +202,11 @@
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-textarea
|
||||
:max-length="500"
|
||||
:placeholder="$t('pleaseStateTheDistribution')"
|
||||
:rows="4"/>
|
||||
:rows="4"
|
||||
v-model="form.cdotasj"
|
||||
/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -174,34 +214,180 @@
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="bootom-button">
|
||||
<a-button style="margin-right:50px">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" @click='next'>{{$t('next')}}</a-button>
|
||||
<a-button style="margin-right:50px" @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" @click="next">{{$t('next')}}</a-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import { message } from 'ant-design-vue'
|
||||
|
||||
export default {
|
||||
name: 'basicInformation',
|
||||
components:{
|
||||
ImportFile
|
||||
},
|
||||
// props:['otaId'],
|
||||
data() {
|
||||
return {
|
||||
confirmLoading: false,
|
||||
disabled: false,
|
||||
formInline:{},
|
||||
projectNameList:[],
|
||||
formRules:[],
|
||||
url: {
|
||||
exportData: '/ota/otaBaCxJbxx/exportData',
|
||||
importZipUrl: '/ota/otaBaCxJbxx/importData',//导入
|
||||
},
|
||||
form:{
|
||||
cxmb:undefined,
|
||||
txzd:'',
|
||||
djbh:'',
|
||||
qymc:'',
|
||||
cplb:undefined,
|
||||
cpsb:'',
|
||||
ggpc:'',
|
||||
cpmc:'',
|
||||
cpxh:'',
|
||||
dllx1:undefined,
|
||||
dllx2:undefined,
|
||||
cdotasj:'',
|
||||
},
|
||||
projectNameList1:['传统动力汽车','节能汽车','新能源汽车','其他'],
|
||||
projectNameList2:[],
|
||||
selectList:[],
|
||||
otaId:'',
|
||||
rules:{
|
||||
djbh:[
|
||||
{
|
||||
required: true,
|
||||
message:this.$t('registrationnumber')+this.$t('cannotEmpty'),
|
||||
trigger:'blur'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.$forceUpdate()
|
||||
this.getSelect()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
next(){
|
||||
this.$emit('basicInformationForm')
|
||||
changeId(value,option){
|
||||
localStorage.removeItem('otaId')
|
||||
localStorage.removeItem('otaIdT')
|
||||
localStorage.setItem('otaIdT',value)
|
||||
|
||||
this.$forceUpdate()
|
||||
this.getData()
|
||||
},
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxJbxx/exportTemplate', '车型基本信息' + '.zip', {})
|
||||
},
|
||||
getSelect(){
|
||||
getAction('/ota/otaBaCxList/list').then(res=>{
|
||||
if(res.code==200){
|
||||
this.selectList=[]
|
||||
res.result.forEach(item=>{
|
||||
let obj={}
|
||||
obj.id=item.id
|
||||
if(item.cpmc==null){
|
||||
item.cpmc=''
|
||||
}
|
||||
if(item.cpxh==null){
|
||||
item.cpxh=''
|
||||
}
|
||||
obj.value=item.ggpc+'-'+item.cpmc+'-'+item.cpxh
|
||||
this.selectList.push(obj)
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
let otaId=localStorage.getItem('otaId')
|
||||
if(otaId==null){
|
||||
otaId=''
|
||||
}
|
||||
getAction('/ota/otaBaCxJbxx/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
|
||||
if(res.code == 200){
|
||||
this.form.qymc=res.result.qymc
|
||||
this.form.djbh=res.result.djbh
|
||||
this.form.cplb=res.result.cplb
|
||||
this.form.ggpc=res.result.ggpc
|
||||
this.form.cpsb=res.result.cpsb
|
||||
this.form.cpmc=res.result.cpmc
|
||||
this.form.cpxh=res.result.cpxh
|
||||
this.form.txzd=res.result.txzd
|
||||
this.form.cdotasj=res.result.cdotasj
|
||||
if(this.$route.query.type == 1 && res.result.cxmb == null){
|
||||
this.form.cxmb = this.form.ggpc+'-'+ this.form.cpmc+'-'+this.form.cpxh
|
||||
}else {
|
||||
this.form.cxmb = res.result.cxmb ? res.result.cxmb : undefined
|
||||
}
|
||||
if(res.result.dllx1 == null ){
|
||||
res.result.dllx1 = undefined
|
||||
}
|
||||
if(res.result.dllx2 == null){
|
||||
res.result.dllx2 = undefined
|
||||
}
|
||||
this.form.dllx1=res.result.dllx1
|
||||
this.form.dllx2=res.result.dllx2
|
||||
// this.changeSelect()
|
||||
this.$forceUpdate()
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
},
|
||||
next(){
|
||||
this.$refs.ruleForm.validate(valid=>{
|
||||
if(valid){
|
||||
this.save()
|
||||
setTimeout(()=>{
|
||||
this.$emit('basicInformationForm')
|
||||
},1000)
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
async save(){
|
||||
this.$refs.ruleForm.validate(valid=>{
|
||||
if(valid){
|
||||
postAction('/ota/otaBaCxJbxx/add',{ otaId:localStorage.getItem('otaId'),...this.form}).then( res => {
|
||||
if(res.code == 200){
|
||||
localStorage.setItem('otaId', res.result.otaId)
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
changeSelect(target){
|
||||
this.form.dllx2=undefined
|
||||
if(target =='传统动力汽车'){
|
||||
this. projectNameList2=['汽油','柴油']
|
||||
}else if (target =='节能汽车'){
|
||||
this. projectNameList2=['混合动力','天然气','甲醇','其他']
|
||||
}else if (target =='新能源汽车'){
|
||||
this. projectNameList2=['纯电动','插电式混合动力','燃料电池']
|
||||
}else{
|
||||
this. projectNameList2=['其他']
|
||||
}
|
||||
|
||||
},
|
||||
update(){
|
||||
this.$forceUpdate()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -258,7 +444,11 @@
|
||||
display: inline-block;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
// .itemModel-input{
|
||||
// width: calc(100% + 10px);
|
||||
// display: inline-block;
|
||||
// margin-top: 2px;
|
||||
// }
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
@@ -274,4 +464,11 @@
|
||||
.bootom-button{
|
||||
text-align: center!important;
|
||||
}
|
||||
// /deep/ .ant-input{
|
||||
// width: calc(100%+20px);
|
||||
// }
|
||||
.Required {
|
||||
color: red;
|
||||
margin-right: 3px;
|
||||
}
|
||||
</style>
|
||||
+204
-72
@@ -2,10 +2,9 @@
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -22,16 +21,19 @@
|
||||
:columns="columns"
|
||||
style="margin-bottom: 20px"
|
||||
>
|
||||
<span slot="functionname" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.gnmc" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 配置情况-->
|
||||
<span slot="configuration" slot-scope="text,record">
|
||||
<a-radio-group>
|
||||
<span slot="configuration" slot-scope="text,record" >
|
||||
<a-radio-group v-model="record.pzqk" >
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<!-- 可升级-->
|
||||
<span slot="whetheritcanbeupgraded" slot-scope="text,record">
|
||||
<a-radio-group>
|
||||
<a-radio-group v-model="record.sfksj">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
@@ -42,23 +44,62 @@
|
||||
:disabled="disable"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false"
|
||||
:dictCode="record.dictCode"
|
||||
v-model="record.jszdhjb"/>
|
||||
</span>
|
||||
<!-- 技术参数-->
|
||||
<span slot="technicalparameters" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjggcs" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="functiondescription" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.gnms" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="applicationconditions" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sytj" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="functiondeelectronicscription" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="electroniccontrollerproductionenterprises" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqscqy" :max-length="500"> </a-input>
|
||||
</span>
|
||||
<span slot="electroniccontrollertypeone" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqxh" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="hardwareversioninformation" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbbxx" :max-length="500"></a-input>
|
||||
</span>
|
||||
|
||||
<span slot="softwaredevelopmententerprise" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbbxx" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="operatingsystemversion" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.rjkfqy" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="inflammatorydata" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtbbh" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 操作列-->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation">{{$t('addcontroller')}}</a>
|
||||
<a class="text-operation">{{$t('delete')}}</a>
|
||||
<a class="text-operation" @click="addlineAtMid(record)">{{$t('addcontroller')}}</a>
|
||||
<a v-if="dataSource.indexOf(record)+1 == dataSource.length" class="text-operation" @click="addlineAtBot">{{$t('addfunction')}}</a>
|
||||
<a v-if="dataSource.length >1" class="text-operation" @click="deleteData(record)">{{$t('delete')}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<div>
|
||||
<a-button @click="clickButtonToUpload" type="primary">{{$t('uploadattachment')}}</a-button>
|
||||
<a-button @click="clickButtonToUpload(fileList)" type="primary"> {{ (fileList === 'null' || fileList === '' ||
|
||||
fileList == null) ? $t('clickUpload') : $t('viewUploadedFiles')
|
||||
}}</a-button>
|
||||
|
||||
<div style='margin-top: 20px'>
|
||||
<p>注:附件包括测试项目清单、测试报告.测试标准或技术规范</p>
|
||||
<p> 支持doc/docx/pdf格式,大小50M以内</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="bootom-button">
|
||||
<a-button style="margin-right:50px">{{$t('preservation')}}</a-button>
|
||||
<a-button style="margin-right:50px" @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
@@ -67,21 +108,53 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
|
||||
export default {
|
||||
name: 'beupgradedonline',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
formInline: {},
|
||||
uploadName:'',
|
||||
fileList:'',
|
||||
url: {
|
||||
exportData: '/ota/otaBaCxKsjjsmccs/exportData',
|
||||
importZipUrl: '/ota/otaBaCxKsjjsmccs/importData',//导入
|
||||
},
|
||||
dataSource: [
|
||||
{
|
||||
key:1,
|
||||
functionname:'ceshi',
|
||||
}
|
||||
gnmc:'前向碰撞预警(FCW)',
|
||||
},
|
||||
{
|
||||
gnmc:'车道偏离预警(LDW)',
|
||||
},
|
||||
{
|
||||
gnmc:'百区监测(BSD)',
|
||||
},
|
||||
{
|
||||
gnmc:'驾驶员疲劳监测(DFM)',
|
||||
},
|
||||
{
|
||||
gnmc:'自动紧急制动(AEB)',
|
||||
},
|
||||
{
|
||||
gnmc:'自适应巡航控制(ACC)',
|
||||
},
|
||||
{
|
||||
gnmc:'车道保持辅助(LKA)',
|
||||
},
|
||||
{
|
||||
gnmc:'智能泊车辅助(IPA)',
|
||||
},
|
||||
{
|
||||
gnmc:'交通拥堵辅助(TJA)',
|
||||
},
|
||||
],
|
||||
loading: false,
|
||||
disable:false,
|
||||
@@ -91,7 +164,8 @@
|
||||
align: 'left',
|
||||
dataIndex: 'functionname',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'functionname' },
|
||||
},
|
||||
{
|
||||
title: this.$t('configuration'),
|
||||
@@ -130,14 +204,16 @@
|
||||
align: 'left',
|
||||
dataIndex: 'functiondescription',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'functiondescription' },
|
||||
},
|
||||
{
|
||||
title: this.$t('applicationconditions'),
|
||||
align: 'left',
|
||||
dataIndex: 'applicationconditions',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'applicationconditions' },
|
||||
},
|
||||
{
|
||||
title: this.$t('controllerparameter'),
|
||||
@@ -151,63 +227,56 @@
|
||||
align: 'left',
|
||||
dataIndex: 'electronic',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'functiondeelectronicscription' },
|
||||
},
|
||||
{
|
||||
title: this.$t('electroniccontrollerproductionenterprises'),
|
||||
align: 'left',
|
||||
dataIndex: 'electroniccontrollerproductionenterprises',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'electroniccontrollerproductionenterprises' },
|
||||
},
|
||||
{
|
||||
title: this.$t('electroniccontrollertype'),
|
||||
align: 'left',
|
||||
dataIndex: 'electroniccontrollertypeone',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'electroniccontrollertypeone' },
|
||||
},
|
||||
{
|
||||
title: this.$t('hardwareversioninformation'),
|
||||
align: 'left',
|
||||
dataIndex: 'hardwareversioninformation',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('electroniccontrollertype'),
|
||||
align: 'left',
|
||||
dataIndex: 'electroniccontrollertype',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('hardwareversioninformation'),
|
||||
align: 'left',
|
||||
dataIndex: 'hardwareversioninformationone',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'hardwareversioninformation' },
|
||||
},
|
||||
{
|
||||
title: this.$t('softwaredevelopmententerprise'),
|
||||
align: 'left',
|
||||
dataIndex: 'softwaredevelopmententerprise',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'softwaredevelopmententerprise' },
|
||||
},
|
||||
{
|
||||
title: this.$t('operatingsystemversion'),
|
||||
align: 'left',
|
||||
dataIndex: 'operatingsystemversion',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'operatingsystemversion' },
|
||||
},
|
||||
{
|
||||
title: this.$t('inflammatorydata'),
|
||||
align: 'left',
|
||||
dataIndex: 'inflammatorydata',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'inflammatorydata' },
|
||||
},
|
||||
]
|
||||
},
|
||||
@@ -223,55 +292,114 @@
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
...queryParam
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxKsjjsmccs/exportTemplate', '可在线升级的驾驶辅助功能名称与参数' + '.zip', {})
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
this.$refs.uploadFile.visible = true
|
||||
this.uploadName = item
|
||||
getAction('sys/common/getFileInfos', { id: item }).then((res) => {
|
||||
if (res.success) {
|
||||
this.$refs.uploadFile.perentHandleFunc(res.result)
|
||||
} else {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
}
|
||||
this.loading = true
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
this.dataSource = res.result.records || []
|
||||
this.total = res.result.total
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
getAction('/ota/otaBaCxKsjjsmccs/queryByOtaId',{otaIdT:otaIdT,otaId:localStorage.getItem('otaId')}).then(res=>{
|
||||
if(res.code==200){
|
||||
if(res.result.list.length==0){
|
||||
this.dataSource=[
|
||||
{
|
||||
gnmc:'前向碰撞预警(FCW)'
|
||||
},
|
||||
{
|
||||
gnmc:'车道偏离预警(LDW)'
|
||||
},
|
||||
{
|
||||
gnmc:'百区监测(BSD)'
|
||||
},
|
||||
{
|
||||
gnmc:'驻员疲劳篮澳CDFM)'
|
||||
},
|
||||
{
|
||||
gnmc:'自动紧急制动(AEB)'
|
||||
},
|
||||
{
|
||||
gnmc:'自适应巡航控制(ACC)'
|
||||
},
|
||||
{
|
||||
gnmc:'自适应巡航控制(ACC)'
|
||||
},
|
||||
{
|
||||
gnmc:'智能泊车辅助(IPA)'
|
||||
},
|
||||
{
|
||||
gnmc:'交通拥堵辅助(TJA)'
|
||||
},
|
||||
]
|
||||
}else{
|
||||
res.result.list.forEach(item =>{
|
||||
item.pzqk =Number(item.pzqk)
|
||||
})
|
||||
res.result.list.forEach(item =>{
|
||||
item.sfksj =Number(item.sfksj)
|
||||
item.jszdhjb=Number(item.jszdhjb)== 0?undefined:Number(item.jszdhjb)
|
||||
})
|
||||
this.dataSource=res.result.list
|
||||
this.fileList = res.result.fj
|
||||
this.$forceUpdate()
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
save(){
|
||||
postAction('/ota/otaBaCxKsjjsmccs/add',{otaId:localStorage.getItem('otaId'),list:this.dataSource,fj:this.fileList}).then(res =>{
|
||||
console.log(res);
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('beupgradedonlineup')
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('beupgradedonlinedown')
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push({
|
||||
id:item.id,
|
||||
fileName:item.fileName
|
||||
})
|
||||
attIdList.push(item.id || data.name)
|
||||
})
|
||||
}
|
||||
/** 赋值给当前对应的表单文件 */
|
||||
this.fileList.uploadName = attIdList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
this.$forceUpdate()
|
||||
// /** 赋值给当前对应的表单文件 */
|
||||
this.fileList = attIdList.join(',')
|
||||
},
|
||||
//中间加
|
||||
addlineAtMid(record){
|
||||
let obj = {gnmc:record.gnmc}
|
||||
this.dataSource.splice(this.dataSource.indexOf(record)+1,0,obj)
|
||||
},
|
||||
//最后一行加
|
||||
addlineAtBot(){
|
||||
let obj={}
|
||||
this.dataSource.push(obj)
|
||||
},
|
||||
deleteData(record){
|
||||
this.dataSource.splice(this.dataSource.indexOf(record),1)
|
||||
},
|
||||
}
|
||||
}
|
||||
@@ -303,4 +431,8 @@
|
||||
::v-deep .ant-table-row-cell-ellipsis .ant-table-column-title {
|
||||
white-space: pre-wrap!important;
|
||||
}
|
||||
::v-deep .ant-table-row:first-child {
|
||||
background: #fff !important;
|
||||
opacity: 3.9 !important;
|
||||
}
|
||||
</style>
|
||||
+10
-285
@@ -2,29 +2,14 @@
|
||||
<div class="box">
|
||||
<a-row :gutter="24" style='margin-top: 30px'>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="box-title-text" v-for='(item,index) in dataSource'>
|
||||
<div class="title-text">
|
||||
<span class="dot"></span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('parameterTemplate')">{{$t('parameterTemplate')}}</span>
|
||||
:title="item.sjzt">{{item.sjzt_dictText}}</span>
|
||||
<div class='titlebox'>
|
||||
<span class='titlebox-text'>提交审批</span>
|
||||
<span class='titlebox-text-text'>2023-02-02 14:13:21</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24" style='margin-top: 30px'>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="dot"></span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('parameterTemplate')">{{$t('parameterTemplate')}}</span>
|
||||
<div class='titlebox'>
|
||||
<span class='titlebox-text'>提交审批</span>
|
||||
<span class='titlebox-text-text'>2023-02-02 14:13:21</span>
|
||||
<span class='titlebox-text'>{{item.sjzt_dictText}}</span>
|
||||
<span class='titlebox-text-text'>{{item.updateTime}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -47,70 +32,7 @@
|
||||
return {
|
||||
dataSource: [],
|
||||
loading: false,
|
||||
url: {
|
||||
list: '/todoCenter/projectProcess/doneProcess'
|
||||
},
|
||||
queryParam: {},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('RelatedItems'),
|
||||
align: 'left',
|
||||
dataIndex: 'projectName',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'RelatedItems' },
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('standardInformation'),
|
||||
align: 'left',
|
||||
dataIndex: 'standardInfo',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'standardInformation' },
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('taskType'),
|
||||
align: 'left',
|
||||
dataIndex: 'flowTypeShow',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('Sponsor'),
|
||||
align: 'left',
|
||||
dataIndex: 'createBy',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('CurrentProcessor'),
|
||||
align: 'left',
|
||||
dataIndex: 'assigneeName',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('TaskCutOffTime'),
|
||||
align: 'left',
|
||||
dataIndex: 'endTime',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('taskStatus'),
|
||||
align: 'left',
|
||||
dataIndex: 'statusShow',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('operation'),
|
||||
align: 'left',
|
||||
fixed: 'right',
|
||||
width: 120,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
selectedRowKeys: [],
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
@@ -124,213 +46,14 @@
|
||||
back(){
|
||||
this.$emit('historicalrecordup')
|
||||
},
|
||||
monitoringProcessClick(row){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/processDetails',
|
||||
query: {
|
||||
prcNum: row.prcNum,
|
||||
prcType:row.flowType,
|
||||
prcId:row.actiProcInstId,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
RelatedItemsClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
query: {
|
||||
id: item.projectLibraryId,
|
||||
projectName: item.projectName,
|
||||
projectNameId: item.projectNameId,
|
||||
targetMarket: item.targetMarket,
|
||||
studioEngineer:item.studioEngineer,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
standardInformationClick(item){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: item.bussDocumentLibraryId,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
viewClick(row) {
|
||||
let query = {}
|
||||
row.router = this.$route.path
|
||||
if (row.flowType == '1') {
|
||||
query = {
|
||||
taskDefinitionKey:row.taskDefinitionKey,
|
||||
taskIds:row.taskId,
|
||||
prcType:row.flowType,
|
||||
prcNum:row.prcNum,
|
||||
isTrue:false,
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/handshakeProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '10'){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
query: {
|
||||
id: row.projectLibraryId,
|
||||
projectName: row.projectName,
|
||||
projectNameId: row.projectNameId,
|
||||
targetMarket: row.targetMarket,
|
||||
studioEngineer:row.studioEngineer,
|
||||
type:'102',
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '2'){
|
||||
row.taskId = row.taskId + ''
|
||||
if (row.taskId.length > 30) {
|
||||
row.taskId = ''
|
||||
}
|
||||
query = {
|
||||
router: row.router,
|
||||
taskIds:row.taskId,
|
||||
actiProcInstId: row.actiProcInstId,
|
||||
projectTaskInventoryId: row.projectLawsInventoryId,
|
||||
projectLibraryId:row.projectLibraryId,
|
||||
id: row.projectLibraryId,
|
||||
studioEngineer: row.studioEngineer,
|
||||
serialNumber: row.serialNumber,
|
||||
TaskKey: row.taskDefinitionKey,
|
||||
isDisplay: false,
|
||||
flowType: 2,
|
||||
Sponsor: 'designInitiatorName',
|
||||
personLiable: 'designDutyName',
|
||||
typeOfDeliverables: 'designDeliverableTypeName',
|
||||
deliverableTemplate: 'designDeliverableTemplate',
|
||||
DueDate: 'designDueDate',
|
||||
remarks: 'designRemark',
|
||||
projectName: row.projectName,
|
||||
targetMarket: row.targetMarket,
|
||||
projectNameId: row.projectNameId,
|
||||
primaryKeyId: row.primaryKeyId,
|
||||
PersonChargeFeedback: row.personChargeFeedback
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/taskListProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '3'){
|
||||
row.taskId = row.taskId + ''
|
||||
if (row.taskId.length > 30) {
|
||||
row.taskId = ''
|
||||
}
|
||||
query = {
|
||||
router: row.router,
|
||||
taskIds:row.taskId,
|
||||
actiProcInstId: row.actiProcInstId,
|
||||
projectTaskInventoryId: row.projectLawsInventoryId,
|
||||
studioEngineer: row.studioEngineer,
|
||||
projectLibraryId:row.projectLibraryId,
|
||||
serialNumber: row.serialNumber,
|
||||
TaskKey: row.taskDefinitionKey,
|
||||
flowType: 3,
|
||||
isDisplay: false,
|
||||
id: row.projectLibraryId,
|
||||
Sponsor: 'prehomoInitiatorName',
|
||||
personLiable: 'prehomoDutyName',
|
||||
typeOfDeliverables: 'prehomoDeliverableTypeName',
|
||||
deliverableTemplate: 'prehomoDeliverableTemplate',
|
||||
DueDate: 'prehomoDueDate',
|
||||
remarks: 'prehomoRemark',
|
||||
projectName: row.projectName,
|
||||
targetMarket: row.targetMarket,
|
||||
projectNameId: row.projectNameId,
|
||||
primaryKeyId: row.primaryKeyId,
|
||||
PersonChargeFeedback: row.personChargeFeedback
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/taskListProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if(row.flowType == '4'){
|
||||
row.taskId = row.taskId + ''
|
||||
if (row.taskId.length > 30) {
|
||||
row.taskId = ''
|
||||
}
|
||||
query = {
|
||||
router: row.router,
|
||||
taskIds: row.taskId,
|
||||
actiProcInstId: row.actiProcInstId,
|
||||
id: row.projectLibraryId,
|
||||
projectLibraryId: row.projectLibraryId,
|
||||
studioEngineer: row.studioEngineer,
|
||||
serialNumber: row.serialNumber,
|
||||
projectTaskInventoryId: row.projectLawsInventoryId,
|
||||
TaskKey: row.taskDefinitionKey,
|
||||
flowType: 4,
|
||||
isDisplay: false,
|
||||
Sponsor: 'verifyInitiatorName',
|
||||
personLiable: 'verifyDutyName',
|
||||
typeOfDeliverables: 'verifyDeliverableTypeName',
|
||||
deliverableTemplate: 'verifyDeliverableTemplate',
|
||||
DueDate: 'verifyDueDate',
|
||||
remarks: 'verifyRemark',
|
||||
projectName: row.projectName,
|
||||
targetMarket: row.targetMarket,
|
||||
projectNameId: row.projectNameId,
|
||||
primaryKeyId: row.primaryKeyId,
|
||||
PersonChargeFeedback: row.personChargeFeedback
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/taskListProcess',
|
||||
query: query
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}
|
||||
},
|
||||
searchQuery(value) {
|
||||
this.queryParam = value
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
},
|
||||
searchReset() {
|
||||
this.queryParam = {}
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
},
|
||||
pageOnChange(page) {
|
||||
this.pageNo = page
|
||||
this.getList()
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.getList()
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
...queryParam
|
||||
otaId:localStorage.getItem('otaId')
|
||||
}
|
||||
this.loading = true
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
getAction('ota/otaBaCxLsjl/list', query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
this.dataSource = res.result.records || []
|
||||
this.total = res.result.total
|
||||
this.dataSource = res.result || []
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
@@ -380,7 +103,9 @@
|
||||
margin-left: 60px;
|
||||
}
|
||||
.titlebox-text-text{
|
||||
margin-left: 60px;
|
||||
margin-top: 23px;
|
||||
position: absolute;
|
||||
left: 249px;
|
||||
}
|
||||
.bootom-button{
|
||||
position: relative;
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
<template>
|
||||
<div class="box">
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model class="formAdd" ref="ruleForm">
|
||||
<a-form-model class="formAdd" ref="ruleForm" :model="queryParam" :rules="rules">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-add">
|
||||
<div class="title-text-add">
|
||||
<span class="title-text-text" :title="$t('upgradepacketprotectionmeasures')">{{$t('upgradepacketprotectionmeasures')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<a-form-model-item class="itemModel" prop="sjbbhcs" >
|
||||
<a-textarea
|
||||
:placeholder="$t('controlsystem')"
|
||||
v-model.trim="queryParam.description" :rows="4"/>
|
||||
v-model.trim="queryParam.sjbbhcs" :rows="4"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -19,8 +19,8 @@
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="bootom-button">
|
||||
<a-button style="margin-right:50px">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" @click='last' style="margin-right:50px">{{$t('last')}}</a-button>
|
||||
<a-button style="margin-right:50px" @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" @click='submit'>{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -33,25 +33,69 @@ export default {
|
||||
name: 'basicInformation',
|
||||
components:{
|
||||
},
|
||||
props:['otaId'],
|
||||
data() {
|
||||
return {
|
||||
confirmLoading: false,
|
||||
disabled: false,
|
||||
queryParam:{}
|
||||
queryParam:{},
|
||||
flag:'',
|
||||
rules:{
|
||||
sjbbhcs:[
|
||||
{ max: 500,message:'最多只能添加500个字符',trigger:'blur'}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData(){
|
||||
if(this.$route.query.type == 1){
|
||||
return
|
||||
}
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
getAction('/ota/otaBaCxQt/queryByOtaId',{otaIdT:otaIdT,otaId:localStorage.getItem('otaId')}).then(res=>{
|
||||
if(res.code==200){
|
||||
this.queryParam=res.result
|
||||
}
|
||||
})
|
||||
},
|
||||
save(){
|
||||
this.$refs.ruleForm.validate( valid =>{
|
||||
if (valid) {
|
||||
this.flag = 1
|
||||
postAction('/ota/otaBaCxQt/add',{otaId:localStorage.getItem('otaId'),...this.queryParam}).then(res=>{
|
||||
console.log(res);
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
})
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('otherup')
|
||||
},
|
||||
submit(){
|
||||
this.save()
|
||||
if(this.flag == 1){
|
||||
this.$router.push({
|
||||
path: '/vehicleregistration',
|
||||
query: {}
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
|
||||
+267
-134
@@ -2,10 +2,9 @@
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -96,115 +95,115 @@
|
||||
<div style='width: 300px'>
|
||||
<span class='content-text' style='background: #f3f6f6;line-height: 50px;text-align: center;color: #191E29;font-weight: bold'>{{$t('fillincontent')}}</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.wlaqyqPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.hmbldPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.csbldPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.sxthsPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.sxtdsdPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.jsyjkPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.jsyhwPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-two'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.czwxdwPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-two'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.gxdhPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-two'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.lsjPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-two'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.gjddtPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-three'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.dzwlPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-four'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.cztxPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-five'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.jsfzczjPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-five'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.jsfzzsqPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-five'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.fxptstsPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-five'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.jsyzyltsPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-two'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.dssadPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span class='radio-text-two'>
|
||||
<a-radio-group style='margin-left: 40px;'>
|
||||
<a-radio-group style='margin-left: 40px;' v-model="query.edrPz">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
@@ -219,7 +218,7 @@
|
||||
<div style='width: 700px'>
|
||||
<span class='content-text' style='background: #f3f6f6;line-height: 50px;text-align: center;color: #191E29;font-weight: bold'>{{$t('fillincontent')}}</span>
|
||||
<span v-for='(item,index) in dataSource' class='content-text'>
|
||||
<a-input v-model="item.val" class="item-input" :placeholder="item.fillincontent"/>
|
||||
<a-input v-model="item.val" class="item-input" :placeholder="item.fillincontent" :max-length="500"/>
|
||||
</span><br>
|
||||
</div>
|
||||
</div>
|
||||
@@ -234,29 +233,42 @@
|
||||
:columns="columns"
|
||||
style="margin-bottom: 20px"
|
||||
>
|
||||
<span slot="componentname" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.bjmc" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 可升级-->
|
||||
<span slot="systemclass" slot-scope="text,record">
|
||||
<a-radio-group>
|
||||
<span slot="systemclass" slot-scope="text,record" >
|
||||
<a-radio-group v-model="record.pzqk">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<!-- 技术参数-->
|
||||
<span slot="technicalparameters" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
</span>
|
||||
<!-- 上传附件-->
|
||||
<span slot="architecturetopologydiagram" slot-scope="text,record">
|
||||
<a-button @click="clickButtonToUpload" type="primary">{{$t('uploadattachment')}}</a-button>
|
||||
</span>
|
||||
<span slot="controllername" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="hardwarespecificationmodel" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjggxh" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="hardwaremanufacturer" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjscqy" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="softwareversion" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.rjbb" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="softwaredevelopmententerprise" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.rjkfqy" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="layoutposition" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.bzwz" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 操作列-->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation">{{$t('addcontroller')}}</a>
|
||||
<a class="text-operation">{{$t('delete')}}</a>
|
||||
<a class="text-operation" @click="addlineAtBot" style='width: 73px;margin-right: 50px'>{{$t('addcontroller')}}</a>
|
||||
<a class="text-operation" v-if="dataSourceList.length >1" @click="deleteData(record)" >{{$t('delete')}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="bootom-button">
|
||||
<a-button class='btn'>{{$t('preservation')}}</a-button>
|
||||
<a-button class='btn' @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
@@ -266,441 +278,495 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import { result } from 'lodash'
|
||||
|
||||
export default {
|
||||
name: 'upgradeRequirements',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
props:['otaId'],
|
||||
data() {
|
||||
return {
|
||||
radioList:9,
|
||||
url: {
|
||||
exportData: '/ota/otaBaCxJsfzbacs/exportData',
|
||||
importZipUrl: '/ota/otaBaCxJsfzbacs/importData',//导入
|
||||
},
|
||||
dataSource: [
|
||||
{
|
||||
key: '1',
|
||||
key: 'wlaqyqSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '2',
|
||||
key: 'wlaqyqBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '3',
|
||||
key: 'wlaqyqGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '4',
|
||||
key: 'wlaqyqScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '5',
|
||||
key: 'hmbldSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '6',
|
||||
key: 'hmbldBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '7',
|
||||
key: 'hmbldGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '8',
|
||||
key: 'hmbldScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '9',
|
||||
key: 'csbldSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '10',
|
||||
key: 'csbldBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '11',
|
||||
key: 'csbldGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '12',
|
||||
key: 'csbldScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '13',
|
||||
key: 'sxthsSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '14',
|
||||
key: 'sxthsBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '15',
|
||||
key: 'sxthsGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '16',
|
||||
key: 'sxthsScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '17',
|
||||
key: 'sxtdsdSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '18',
|
||||
key: 'sxtdsdBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '19',
|
||||
key: 'sxtdsdGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '20',
|
||||
key: 'sxtdsdScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '21',
|
||||
key: 'jsyjkSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '22',
|
||||
key: 'jsyjkBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '23',
|
||||
key: 'jsyjkGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '24',
|
||||
key: 'jsyjkScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '25',
|
||||
key: 'jsyhwSl',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('Quantity'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '26',
|
||||
key: 'jsyhwBzwz',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('layoutposition'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '27',
|
||||
key: 'jsyhwGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '28',
|
||||
key: 'jsyhwScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('productionenterprise'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '29',
|
||||
key: 'czwxdwGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '30',
|
||||
key: 'czwxdwScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '31',
|
||||
key: 'gxdhGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '32',
|
||||
key: 'gxdhScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '33',
|
||||
key: 'lsjGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '34',
|
||||
key: 'lsjScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '35',
|
||||
key: 'gjddtGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('VersionNumber'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '36',
|
||||
key: 'gjddtScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '37',
|
||||
key: 'dzwlDxxgcs',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('qualitativelydescriberelevantplaces'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '38',
|
||||
key: 'cztxXtmc',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('systemname'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '39',
|
||||
key: 'cztxGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('systemspecificationmodel'),
|
||||
fillincontent:this.$t('forwardXquantity'),
|
||||
},
|
||||
{
|
||||
key: '40',
|
||||
key: 'cztxScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('systemproductionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '41',
|
||||
key: 'cztxBbh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('softwareversionnumber'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '42',
|
||||
key: 'cztxKfqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('softwaredevelopmententerprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '43',
|
||||
key: 'jsfzczjMc',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('controlname'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '44',
|
||||
key: 'jsfzczjYjxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('hardwarespecificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '45',
|
||||
key: 'jsfzczjScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '46',
|
||||
key: 'jsfzzsqMc',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('nameofindicatorsignaldevice'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '47',
|
||||
key: 'jsfzzsqYjxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('hardwarespecificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '48',
|
||||
key: 'jsfzzsqScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '49',
|
||||
key: 'fxptstsMc',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('nameofindicatorsignaldevice'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '50',
|
||||
key: 'fxptstsYjxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('hardwarespecificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '51',
|
||||
key: 'fxptstsScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '52',
|
||||
key: 'jsyzyltsMc',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('nameofindicatorsignaldevice'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '53',
|
||||
key: 'jsyzyltsYjxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('hardwarespecificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '54',
|
||||
key: 'jsyzyltsScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '55',
|
||||
key: 'dssadGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '56',
|
||||
key: 'dssadScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '57',
|
||||
key: 'edrGgxh',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('specificationmodel'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
{
|
||||
key: '58',
|
||||
key: 'edrScqy',
|
||||
val:'',
|
||||
componentname: this.$t('networksecurityrequirements'),
|
||||
configuration: this.$t('ineffectiveupgrades'),
|
||||
ParameterName: this.$t('productionenterprise'),
|
||||
fillincontent:this.$t('yesisselected'),
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
],
|
||||
url: {
|
||||
},
|
||||
queryParam: {},
|
||||
dataSourceList: [
|
||||
{
|
||||
key:1,
|
||||
systemclass: 'ceshi',
|
||||
vaule: 2,
|
||||
bjmc:'车端OTA升级功能模块'
|
||||
}
|
||||
],
|
||||
columns: [
|
||||
@@ -709,7 +775,8 @@ export default {
|
||||
align: 'left',
|
||||
dataIndex: 'componentname',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'componentname' },
|
||||
},
|
||||
{
|
||||
title: this.$t('configuration'),
|
||||
@@ -731,42 +798,48 @@ export default {
|
||||
align: 'left',
|
||||
dataIndex: 'controllername',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'controllername' },
|
||||
},
|
||||
{
|
||||
title: this.$t('hardwarespecificationmodel'),
|
||||
align: 'left',
|
||||
dataIndex: 'hardwarespecificationmodel',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'hardwarespecificationmodel' },
|
||||
},
|
||||
{
|
||||
title: this.$t('hardwaremanufacturer'),
|
||||
align: 'left',
|
||||
dataIndex: 'hardwaremanufacturer',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'hardwaremanufacturer' },
|
||||
},
|
||||
{
|
||||
title: this.$t('softwareversion'),
|
||||
align: 'left',
|
||||
dataIndex: 'softwareversion',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'softwareversion' },
|
||||
},
|
||||
{
|
||||
title: this.$t('softwaredevelopmententerprise'),
|
||||
align: 'left',
|
||||
dataIndex: 'softwaredevelopmententerprise',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'softwaredevelopmententerprise' },
|
||||
},
|
||||
{
|
||||
title: this.$t('layoutposition'),
|
||||
align: 'left',
|
||||
dataIndex: 'layoutposition',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'layoutposition' },
|
||||
},
|
||||
]
|
||||
},
|
||||
@@ -780,12 +853,64 @@ export default {
|
||||
],
|
||||
selectedRowKeys: [],
|
||||
fileList:{},
|
||||
query:{}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxList/exportTemplate', '驾驶辅助系统基础备案参数' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
if(this.$route.query.type == 1){
|
||||
return
|
||||
}
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
getAction('/ota/otaBaCxJsfzbacs/queryByOtaId',{otaIdT,otaId:localStorage.getItem('otaId')}).then(res=>{
|
||||
if(res.code==200){
|
||||
if(res.result.kzq.length == 0){
|
||||
this.dataSourceList=[
|
||||
{
|
||||
bjmc:'车端OTA升级功能模块'
|
||||
}
|
||||
]
|
||||
}else{
|
||||
res.result.kzq.forEach(item=>{
|
||||
item.pzqk=Number(item.pzqk)
|
||||
})
|
||||
this.dataSourceList=res.result.kzq
|
||||
}
|
||||
|
||||
this.dataSource.forEach(item=>{
|
||||
for(let key in res.result.bj){
|
||||
if(Number(res.result.bj[key])!=NaN &&Number(res.result.bj[key])!=0 && key !='id'){
|
||||
console.log(key);
|
||||
res.result.bj[key]=Number(res.result.bj[key])
|
||||
}
|
||||
if(item.key==key){
|
||||
item.val=res.result.bj[key]
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
// res.result.bj.forEach(item=>{
|
||||
// if(Number(item) !=NaN){
|
||||
// item=Number(item)
|
||||
// }
|
||||
// })
|
||||
this.query=res.result.bj
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
click(value){
|
||||
this.fileList = value
|
||||
console.log(this.fileList)
|
||||
@@ -809,30 +934,31 @@ export default {
|
||||
this.fileList.uploadName = attIdList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
save(){
|
||||
let arr =[]
|
||||
this.dataSource.map(item=>{
|
||||
let kval={}
|
||||
kval.key=item.key
|
||||
kval.val=item.val
|
||||
arr.push(kval)
|
||||
})
|
||||
let query = {
|
||||
...queryParam
|
||||
}
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
} else {
|
||||
}
|
||||
postAction('/ota/otaBaCxJsfzbacs/add',{
|
||||
otaId:localStorage.getItem('otaId'),
|
||||
bj:this.query,
|
||||
cs:arr,
|
||||
kzq:this.dataSourceList
|
||||
}).then( res => {
|
||||
console.log(res);
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('recordparametersup')
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('recordparametersdown')
|
||||
},
|
||||
// 合并单元格
|
||||
@@ -853,7 +979,14 @@ export default {
|
||||
console.log(obj,'2')
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
},
|
||||
addlineAtBot(){
|
||||
let obj={bjmc:'车端OTA升级功能模块'}
|
||||
this.dataSourceList.push(obj)
|
||||
},
|
||||
deleteData(record){
|
||||
this.dataSourceList.splice(this.dataSourceList.indexOf(record),1)
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
+100
-54
@@ -2,10 +2,9 @@
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -23,17 +22,24 @@
|
||||
style="margin-bottom: 20px"
|
||||
>
|
||||
<span slot="havemeasures" slot-scope="text,record">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<j-multi-select-tag class="box-input"
|
||||
v-model="record.info"
|
||||
@change="update"
|
||||
:placeholder="$t('PleaseSelect')"
|
||||
:type="'select'"
|
||||
:dictCode="record.dictCode"
|
||||
:triggerChange="false"/>
|
||||
</span>
|
||||
<span slot="certifyingmaterials" slot-scope="text,record">
|
||||
<a-button type="primary" v-model="record.relevantverification">{{$t('uploadattachment')}}</a-button>
|
||||
<a-button type="primary" @click="clickButtonToUpload(record.zmcl,record.key)" v-model="record.zmcl">
|
||||
{{ (record.zmcl === 'null' || record.zmcl === '' ||
|
||||
record.zmcl == null) ? $t('uploadattachment') : $t('viewUploadedFiles')
|
||||
}}
|
||||
</a-button>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="bootom-button">
|
||||
<a-button class='btn'>{{$t('preservation')}}</a-button>
|
||||
<a-button class='btn' @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
@@ -42,44 +48,63 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
|
||||
export default {
|
||||
name: 'safetyPrecautions',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
props:['otaId'],
|
||||
data() {
|
||||
return {
|
||||
url: {
|
||||
exportData: '/ota/otaBaCxAqcs/exportData',
|
||||
importZipUrl: '/ota/otaBaCxAqcs/importData',//导入
|
||||
},
|
||||
dataSource: [
|
||||
{
|
||||
key: '1',
|
||||
zmcl:'',
|
||||
info:'',
|
||||
aspect: this.$t('upgradepacketprotectionmeasures'),
|
||||
safetymeasure: this.$t('authenticityandintegrityprotectionmechanism'),
|
||||
relevantverification: 'havemeasures',
|
||||
certifyingmaterials: this.$t('uploadattachment'),
|
||||
dictCode:'protection_mechanism'
|
||||
},
|
||||
{
|
||||
key: '2',
|
||||
zmcl:'',
|
||||
info:'',
|
||||
aspect: this.$t('otaupgradedsecuritymeasuresforvehicles'),
|
||||
safetymeasure: this.$t('failsafmechanism'),
|
||||
relevantverification: 'havemeasures',
|
||||
certifyingmaterials:'',
|
||||
dictCode:'fail_safe_mechanism'
|
||||
},
|
||||
{
|
||||
key: '3',
|
||||
aspect: '',
|
||||
zmcl:'',
|
||||
info:'',
|
||||
safetymeasure: this.$t('vehiclesafetyMeasuresafterUpgradefailure'),
|
||||
relevantverification: 'havemeasures',
|
||||
certifyingmaterials:'',
|
||||
dictCode:'upgrade_failure'
|
||||
},
|
||||
{
|
||||
key: '4',
|
||||
aspect: '',
|
||||
zmcl:'',
|
||||
info:'',
|
||||
safetymeasure: this.$t('informationsecuritymechanism'),
|
||||
relevantverification: 'havemeasures',
|
||||
certifyingmaterials:'',
|
||||
dictCode:'Information_security_mechanism'
|
||||
},
|
||||
],
|
||||
loading: false,
|
||||
@@ -148,16 +173,58 @@
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
total: 0,
|
||||
url: {
|
||||
list: '/todoCenter/projectProcess/issuedProcess'
|
||||
},
|
||||
queryParam: {}
|
||||
type:'',
|
||||
queryParam: {},
|
||||
fileList: {},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
// this.getList()
|
||||
this.getData()
|
||||
},
|
||||
|
||||
methods: {
|
||||
// 模板下载
|
||||
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxAqcs/exportTemplate', '安全措施' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
getAction('/ota/otaBaCxAqcs/queryByOtaId',{otaIdT:otaIdT,otaId:localStorage.getItem('otaId')}).then(res=>{
|
||||
if(res.code == 200){
|
||||
|
||||
this.dataSource[0].info = res.result.bhjz
|
||||
this.dataSource[1].info =res.result.fsxjz
|
||||
// this.dataSource[2].info= Number(res.result.sjsbcs)== 0 ? undefined :Number(res.result.sjsbcs)
|
||||
this.dataSource[2].info= res.result.sjsbcs
|
||||
this.dataSource[3].info= res.result.xxaqjz
|
||||
this.fileList.uploadName = res.result.zmclList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
|
||||
this.$forceUpdate()
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push({
|
||||
id: item.id,
|
||||
fileName: item.fileName
|
||||
})
|
||||
})
|
||||
}
|
||||
/** 赋值给当前对应的表单文件 */
|
||||
this.fileList.uploadName = attIdList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
click(value){
|
||||
this.fileList = value
|
||||
console.log(this.fileList)
|
||||
@@ -167,50 +234,25 @@
|
||||
|
||||
this.$refs.uploadFile.visible = true
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push({
|
||||
id:item.id,
|
||||
fileName:item.fileName
|
||||
})
|
||||
})
|
||||
}
|
||||
/** 赋值给当前对应的表单文件 */
|
||||
this.fileList.uploadName = attIdList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
...queryParam
|
||||
}
|
||||
this.loading = true
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
}
|
||||
save(){
|
||||
let obj={}
|
||||
obj.otaId=localStorage.getItem('otaId'),
|
||||
obj.bhjz = this.dataSource[0].info
|
||||
obj.fsxjz= this.dataSource[1].info
|
||||
obj.sjsbcs = this.dataSource[2].info
|
||||
obj.xxaqjz = this.dataSource[3].info
|
||||
obj.zmclList = this.fileList.uploadName
|
||||
postAction('/ota/otaBaCxAqcs/add',obj).then(res =>{
|
||||
console.log(res);
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('safetyPrecautionsup')
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('safetyPrecautionsdown')
|
||||
},
|
||||
}
|
||||
@@ -278,4 +320,8 @@
|
||||
color: #00B3BE;
|
||||
border-color: #00B3BE;
|
||||
}
|
||||
::v-deep .ant-table-row:first-child {
|
||||
background: #fff !important;
|
||||
opacity: 3.9 !important;
|
||||
}
|
||||
</style>
|
||||
+322
-272
@@ -2,312 +2,362 @@
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
</div>
|
||||
<a-table
|
||||
ref="table"
|
||||
size="middle"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 140px)'}"
|
||||
rowKey="key"
|
||||
bordered
|
||||
:data-source="dataSource"
|
||||
:columns="columns"
|
||||
style="margin-bottom: 20px"
|
||||
>
|
||||
<a-table ref="table" size="middle" :pagination="false" :scroll="{ x: '100%', y: 'calc(100vh - 140px)' }" rowKey="key"
|
||||
bordered :data-source="dataSource" :columns="columns" style="margin-bottom: 20px">
|
||||
|
||||
<span slot="relevantverification" slot-scope="text,record">
|
||||
<a-radio-group v-model="record.relevantverification">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
<a-radio-group v-model="record.relevantverification">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<span slot="certifyingmaterials" slot-scope="text,record">
|
||||
<a-button type="primary" v-model="record.relevantverification">{{$t('uploadattachment')}}</a-button>
|
||||
<a-button type="primary" v-model="record.relevantverification">{{ $t('uploadattachment') }}</a-button>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="bootom-button">
|
||||
<a-button class='btn'>{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
<a-button class='btn' @click="save">{{ $t('preservation') }}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click="last">{{ $t('last') }}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{ $t('next') }}</a-button>
|
||||
</div>
|
||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
|
||||
export default {
|
||||
name: 'upgradeRequirements',
|
||||
components:{
|
||||
uploadFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dataSource: [
|
||||
{
|
||||
key: '1',
|
||||
onlineupgraderequirements: this.$t('networksecurityrequirements'),
|
||||
specificrequirements: this.$t('ineffectiveupgrades'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:this.$t('uploadattachment'),
|
||||
},
|
||||
{
|
||||
key: '2',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('againstunauthorized'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '3',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('communicationinterfacethathasateastusedastandard'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '4',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('softwareupgrade'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '5',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('Ensurethatsoftware'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '6',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('ifanupgrademayaffectvehiclesafety'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '7',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('iftheimplementationoftheupgradaffectsdrivingsafety'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '8',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('ensurethatthevehicleisinasafecondition'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '9',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('priortotheexecutionoftheupgrade'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
{
|
||||
key: '10',
|
||||
onlineupgraderequirements:'',
|
||||
specificrequirements: this.$t('afterperformingtheupgrade'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials:'',
|
||||
},
|
||||
],
|
||||
url: {
|
||||
export default {
|
||||
name: 'upgradeRequirements',
|
||||
components: {
|
||||
uploadFile,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
url: {
|
||||
exportData: '/ota/otaBaCxZxsjyq/exportData',
|
||||
importZipUrl: '/ota/otaBaCxZxsjyq/importData',//导入
|
||||
},
|
||||
dataSource: [
|
||||
{
|
||||
key: '1',
|
||||
onlineupgraderequirements: this.$t('networksecurityrequirements'),
|
||||
specificrequirements: this.$t('ineffectiveupgrades'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: this.$t('uploadattachment'),
|
||||
},
|
||||
queryParam: {},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('onlineupgraderequirements'),
|
||||
align: 'left',
|
||||
dataIndex: 'onlineupgraderequirements',
|
||||
width: 170,
|
||||
customRender: (value, row, index) => {
|
||||
const obj = {
|
||||
children: '',
|
||||
attrs: {},
|
||||
};
|
||||
if(index === 0){ // 第一行数据开始,跨行合并的长度为数据data的长度
|
||||
obj.attrs.rowSpan = 2;
|
||||
obj.children = this.$t('networksecurityrequirements')
|
||||
}else if(index === 2){ // 第一行数据开始,跨行合并的长度为数据data的长度
|
||||
obj.attrs.rowSpan = 6;
|
||||
obj.children = this.$t('upgradefunctionrequirements')
|
||||
}else if(index === 8){
|
||||
obj.attrs.rowSpan = 2;
|
||||
obj.children = this.$t('usernotificationrequirement')
|
||||
}else{
|
||||
obj.attrs.rowSpan = 0
|
||||
}
|
||||
return obj;
|
||||
{
|
||||
key: '2',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('againstunauthorized'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '3',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('communicationinterfacethathasateastusedastandard'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '4',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('softwareupgrade'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '5',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('Ensurethatsoftware'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '6',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('ifanupgrademayaffectvehiclesafety'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '7',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('iftheimplementationoftheupgradaffectsdrivingsafety'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '8',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('ensurethatthevehicleisinasafecondition'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '9',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('priortotheexecutionoftheupgrade'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
{
|
||||
key: '10',
|
||||
onlineupgraderequirements: '',
|
||||
specificrequirements: this.$t('afterperformingtheupgrade'),
|
||||
relevantverification: '',
|
||||
certifyingmaterials: '',
|
||||
},
|
||||
],
|
||||
queryParam: {},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('onlineupgraderequirements'),
|
||||
align: 'left',
|
||||
dataIndex: 'onlineupgraderequirements',
|
||||
width: 170,
|
||||
customRender: (value, row, index) => {
|
||||
const obj = {
|
||||
children: '',
|
||||
attrs: {},
|
||||
};
|
||||
if (index === 0) { // 第一行数据开始,跨行合并的长度为数据data的长度
|
||||
obj.attrs.rowSpan = 2;
|
||||
obj.children = this.$t('networksecurityrequirements')
|
||||
} else if (index === 2) { // 第一行数据开始,跨行合并的长度为数据data的长度
|
||||
obj.attrs.rowSpan = 6;
|
||||
obj.children = this.$t('upgradefunctionrequirements')
|
||||
} else if (index === 8) {
|
||||
obj.attrs.rowSpan = 2;
|
||||
obj.children = this.$t('usernotificationrequirement')
|
||||
} else {
|
||||
obj.attrs.rowSpan = 0
|
||||
}
|
||||
},
|
||||
{
|
||||
title: this.$t('specificrequirements'),
|
||||
align: 'left',
|
||||
dataIndex: 'specificrequirements',
|
||||
},
|
||||
{
|
||||
title: this.$t('relevantverification'),
|
||||
align: 'left',
|
||||
dataIndex: 'relevantverification',
|
||||
scopedSlots: { customRender: 'relevantverification' },
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('certifyingmaterials'),
|
||||
align: 'left',
|
||||
dataIndex: 'certifyingmaterials',
|
||||
scopedSlots: { customRender: 'certifyingmaterials' },
|
||||
ellipsis: true,
|
||||
width: 170,
|
||||
customRender: (value, row, index) => {
|
||||
const child = this.$createElement('button', {
|
||||
domProps: {
|
||||
innerHTML: value
|
||||
},
|
||||
on: {
|
||||
click: () =>{this.click(row)}
|
||||
}
|
||||
});
|
||||
const obj = {
|
||||
children: child,
|
||||
attrs: {},
|
||||
};
|
||||
if(index === 0){ // 第一行数据开始,跨行合并的长度为数据data的长度
|
||||
obj.attrs.rowSpan = 10;
|
||||
}else{
|
||||
obj.attrs.rowSpan = 0
|
||||
return obj;
|
||||
}
|
||||
},
|
||||
{
|
||||
title: this.$t('specificrequirements'),
|
||||
align: 'left',
|
||||
dataIndex: 'specificrequirements',
|
||||
},
|
||||
{
|
||||
title: this.$t('relevantverification'),
|
||||
align: 'left',
|
||||
dataIndex: 'relevantverification',
|
||||
scopedSlots: { customRender: 'relevantverification' },
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('certifyingmaterials'),
|
||||
align: 'left',
|
||||
dataIndex: 'certifyingmaterials',
|
||||
scopedSlots: { customRender: 'certifyingmaterials' },
|
||||
ellipsis: true,
|
||||
width: 170,
|
||||
customRender: (value, row, index) => {
|
||||
const child = this.$createElement('button', {
|
||||
domProps: {
|
||||
innerHTML: value
|
||||
},
|
||||
on: {
|
||||
click: () => { this.click(row) }
|
||||
}
|
||||
return obj
|
||||
});
|
||||
const obj = {
|
||||
children: child,
|
||||
attrs: {},
|
||||
};
|
||||
if (index === 0) { // 第一行数据开始,跨行合并的长度为数据data的长度
|
||||
obj.attrs.rowSpan = 10;
|
||||
} else {
|
||||
obj.attrs.rowSpan = 0
|
||||
}
|
||||
return obj
|
||||
|
||||
}
|
||||
},
|
||||
],
|
||||
selectedRowKeys: [],
|
||||
fileList:{},
|
||||
}
|
||||
},
|
||||
],
|
||||
selectedRowKeys: [],
|
||||
fileList: {},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
this.$forceUpdate()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxZxsjyq/exportTemplate', '在线升级要求' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
console.log(localStorage.getItem('otaId'));
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
},
|
||||
methods: {
|
||||
click(value){
|
||||
this.fileList = value
|
||||
console.log(this.fileList)
|
||||
if(this.fileList.uploadName){
|
||||
this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
|
||||
}
|
||||
|
||||
this.$refs.uploadFile.visible = true
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push({
|
||||
id:item.id,
|
||||
fileName:item.fileName
|
||||
})
|
||||
getAction('/ota/otaBaCxZxsjyq/queryByOtaId',{otaIdT:otaIdT,otaId:localStorage.getItem('otaId')}).then(res=>{
|
||||
this.dataSource[0].relevantverification =Number(res.result.bhsjb)
|
||||
this.dataSource[1].relevantverification=Number(res.result.bhclbb)
|
||||
this.dataSource[2].relevantverification=Number(res.result.clgxnl)
|
||||
this.dataSource[3].relevantverification=Number(res.result.clsjtj)
|
||||
this.dataSource[4].relevantverification=Number(res.result.clsjdl)
|
||||
this.dataSource[5].relevantverification=Number(res.result.sjbhaq)
|
||||
this.dataSource[6].relevantverification=Number(res.result.sjantj)
|
||||
this.dataSource[7].relevantverification=Number(res.result.sjsbaq)
|
||||
this.dataSource[8].relevantverification=Number(res.result.sjgg)
|
||||
this.dataSource[9].relevantverification=Number(res.result.sjzt)
|
||||
this.fileList.uploadName = res.result.zmclList
|
||||
this.$nextTick(() => {
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
})
|
||||
}
|
||||
/** 赋值给当前对应的表单文件 */
|
||||
this.fileList.uploadName = attIdList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
...queryParam
|
||||
}
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
} else {
|
||||
}
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
console.log(this.fileList)
|
||||
this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
|
||||
this.$forceUpdate()
|
||||
})
|
||||
|
||||
},
|
||||
last(){
|
||||
this.$emit('upgradeRequirementsup')
|
||||
},
|
||||
next(){
|
||||
this.$emit('upgradeRequirementsdown')
|
||||
click(value) {
|
||||
this.fileList = value
|
||||
console.log(this.fileList)
|
||||
if (this.fileList.uploadName) {
|
||||
this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
|
||||
}
|
||||
|
||||
this.$refs.uploadFile.visible = true
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push({
|
||||
id: item.id,
|
||||
fileName: item.fileName
|
||||
})
|
||||
})
|
||||
}
|
||||
/** 赋值给当前对应的表单文件 */
|
||||
this.fileList.uploadName = attIdList
|
||||
this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
...queryParam
|
||||
}
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
if (res.result.current > 1 && res.result.records.length == 0) {
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
} else {
|
||||
}
|
||||
})
|
||||
},
|
||||
save() {
|
||||
let obj = {}
|
||||
obj.otaId=localStorage.getItem('otaId')
|
||||
obj.bhsjb = this.dataSource[0].relevantverification
|
||||
obj.bhclbb = this.dataSource[1].relevantverification
|
||||
obj.clgxnl = this.dataSource[2].relevantverification
|
||||
obj.clsjtj = this.dataSource[3].relevantverification
|
||||
obj.clsjdl = this.dataSource[4].relevantverification
|
||||
obj.sjbhaq = this.dataSource[5].relevantverification
|
||||
obj.sjantj = this.dataSource[6].relevantverification
|
||||
obj.sjsbaq = this.dataSource[7].relevantverification
|
||||
obj.sjgg = this.dataSource[8].relevantverification
|
||||
obj.sjzt = this.dataSource[9].relevantverification
|
||||
obj.zmclList = this.fileList.uploadName
|
||||
postAction('/ota/otaBaCxZxsjyq/add', obj).then(res => {
|
||||
console.log(res);
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
},
|
||||
last() {
|
||||
this.save()
|
||||
this.$emit('upgradeRequirementsup')
|
||||
},
|
||||
next() {
|
||||
this.save()
|
||||
this.$emit('upgradeRequirementsdown')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
@import '~@assets/less/common.less';
|
||||
@import '~@assets/less/common.less';
|
||||
|
||||
.box {
|
||||
padding: 0 24px 24px 24px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.box {
|
||||
padding: 0 24px 24px 24px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
button{
|
||||
width: 89px;
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
background: #00B3BE;
|
||||
height: 30px;
|
||||
border: none;
|
||||
color: white;
|
||||
}
|
||||
button {
|
||||
width: 89px;
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
background: #00B3BE;
|
||||
height: 30px;
|
||||
border: none;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bootom-button{
|
||||
text-align: center!important;
|
||||
}
|
||||
.btn{
|
||||
width: 63px !important;
|
||||
margin-right:50px;
|
||||
line-height: 1.499;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
font-weight: 400;
|
||||
white-space: nowrap;
|
||||
text-align: center;
|
||||
background-image: none;
|
||||
border: 1px solid transparent;
|
||||
box-shadow: 0 2px 0 rgba(0, 0, 0, 0.015);
|
||||
cursor: pointer;
|
||||
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
-ms-touch-action: manipulation;
|
||||
touch-action: manipulation;
|
||||
height: 32px;
|
||||
padding: 0 15px;
|
||||
font-size: 14px;
|
||||
border-radius: 4px;
|
||||
color: #040B29;
|
||||
background-color: #fff;
|
||||
border-color: #d9d9d9;
|
||||
}
|
||||
.btn:hover{
|
||||
color: #00B3BE;
|
||||
border-color: #00B3BE;
|
||||
}
|
||||
.bootom-button {
|
||||
text-align: center !important;
|
||||
}
|
||||
|
||||
.btn {
|
||||
width: 63px !important;
|
||||
margin-right: 50px;
|
||||
line-height: 1.499;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
font-weight: 400;
|
||||
white-space: nowrap;
|
||||
text-align: center;
|
||||
background-image: none;
|
||||
border: 1px solid transparent;
|
||||
box-shadow: 0 2px 0 rgba(0, 0, 0, 0.015);
|
||||
cursor: pointer;
|
||||
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
-ms-touch-action: manipulation;
|
||||
touch-action: manipulation;
|
||||
height: 32px;
|
||||
padding: 0 15px;
|
||||
font-size: 14px;
|
||||
border-radius: 4px;
|
||||
color: #040B29;
|
||||
background-color: #fff;
|
||||
border-color: #d9d9d9;
|
||||
}
|
||||
|
||||
.btn:hover {
|
||||
color: #00B3BE;
|
||||
border-color: #00B3BE;
|
||||
}
|
||||
</style>
|
||||
+250
-41
@@ -2,10 +2,9 @@
|
||||
<div class="box">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text">
|
||||
<a-icon type="import" :rotate="270"/>
|
||||
{{$t('dataimport')}}
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div class="operator-text">
|
||||
<div @click='handleModule' class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
</div>
|
||||
@@ -21,56 +20,140 @@
|
||||
:columns="columns"
|
||||
style="margin-bottom: 20px"
|
||||
>
|
||||
<span slot="sys" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtlb" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 可升级-->
|
||||
<span slot="systemclass" slot-scope="text,record">
|
||||
<a-radio-group>
|
||||
<a-radio-group v-model="record.sfksj">
|
||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||
</a-radio-group>
|
||||
</span>
|
||||
<!-- 技术参数-->
|
||||
<span slot="technicalparameters" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('ifNot')"></a-input>
|
||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjbgcs" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 上传附件-->
|
||||
<span slot="architecturetopologydiagram" slot-scope="text,record">
|
||||
<a-button @click="clickButtonToUpload" type="primary">{{$t('uploadattachment')}}</a-button>
|
||||
<a-button @click="clickButtonToUpload(record.tpt,record.key)" type="primary">
|
||||
{{ (record.tpt === 'null' || record.tpt === '' ||
|
||||
record.tpt == null) ? $t('uploadattachment') : $t('viewUploadedFiles')
|
||||
}}
|
||||
</a-button>
|
||||
</span>
|
||||
<span slot="electronicController" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="electroniccontrollername" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.aqwzxdj" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="electroniccontrollerproductionenterprises" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqscqy" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="electroniccontrollertype" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqxh" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="hardwareversioninformation" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbbxx" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="initialsoftwareversionnumber" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.csrjbbh" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="initialpackageforintegrityinflammatorydata" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.csrjbwzsj" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="environmentalprotection" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjsfyx" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="operatingsystemtype" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtlx" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="operatingsystemmanufacturer" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtscqy" :max-length="500"></a-input>
|
||||
</span>
|
||||
<span slot="operatingsystemversion" slot-scope="text,record">
|
||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtbbh" :max-length="500"></a-input>
|
||||
</span>
|
||||
<!-- 操作列-->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation">{{$t('addcontroller')}}</a>
|
||||
<a class="text-operation">{{$t('delete')}}</a>
|
||||
<span slot="operation" slot-scope="text,record" >
|
||||
<a class="text-operation" @click="addlineAtMid(record)">{{$t('addcontroller')}}</a>
|
||||
<a v-if="dataSource.indexOf(record)+1 == dataSource.length" class="text-operation" @click="addlineAtBot">{{$t('addsystem')}}</a>
|
||||
<a v-if="dataSource.length >1" class="text-operation" @click="deleteData(record)">{{$t('delete')}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<div>
|
||||
<a-button @click="clickButtonToUpload" type="primary">{{$t('uploadattachment')}}</a-button>
|
||||
<a-button @click="clickButtonToUploadota(fileList)" type="primary">
|
||||
{{ (fileList === 'null' || fileList === '' ||
|
||||
fileList == null) ? $t('uploadattachment') : $t('viewUploadedFiles')
|
||||
}}</a-button>
|
||||
<div style='margin-top: 20px'>
|
||||
<p>注:附件包括测试项目清单、测试报告.测试标准或技术规范</p>
|
||||
<p> 支持doc/docx/pdf格式,大小50M以内</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="bootom-button">
|
||||
<a-button style="margin-right:50px">{{$t('preservation')}}</a-button>
|
||||
<a-button style="margin-right:50px" @click="save">{{$t('preservation')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||
</div>
|
||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||
<uploadFileOta ref="uploadFileOta" @uploadSuccess="uploadSuccessOta"></uploadFileOta>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import uploadFileOta from '@/components/uploadFileOta/file'
|
||||
|
||||
export default {
|
||||
name: 'upgradedonline',
|
||||
components:{
|
||||
uploadFile
|
||||
uploadFile,
|
||||
uploadFileOta,
|
||||
ImportFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
url: {
|
||||
exportData: '/ota/otaBaCxKsjxtmccs/exportData',
|
||||
importZipUrl: '/ota/otaBaCxKsjxtmccs/importData',//导入
|
||||
},
|
||||
fileList:'',
|
||||
dataSource: [
|
||||
{
|
||||
key:1,
|
||||
systemclass: 'ceshi',
|
||||
vaule: 2,
|
||||
}
|
||||
xtlb:'动力系统',
|
||||
tpt:'',
|
||||
key:'1'
|
||||
},
|
||||
{
|
||||
xtlb:'传动系统',
|
||||
tpt:'',
|
||||
key:'2'
|
||||
},
|
||||
{
|
||||
xtlb:'转向系统',
|
||||
tpt:'',
|
||||
key:'3'
|
||||
},
|
||||
{
|
||||
xtlb:'制动系统',
|
||||
tpt:'',
|
||||
key:'4'
|
||||
},
|
||||
{
|
||||
xtlb:'车身系统',
|
||||
tpt:'',
|
||||
key:'5'
|
||||
},
|
||||
{
|
||||
xtlb:'车载能源系统',
|
||||
tpt:'',
|
||||
key:'6'
|
||||
},
|
||||
],
|
||||
columns: [
|
||||
{
|
||||
@@ -78,7 +161,8 @@
|
||||
align: 'left',
|
||||
dataIndex: 'systemclass',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'sys' },
|
||||
},
|
||||
{
|
||||
title: this.$t('whetheritcanbeupgraded'),
|
||||
@@ -116,77 +200,88 @@
|
||||
align: 'left',
|
||||
dataIndex: 'electronicController',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'electronicController' },
|
||||
},
|
||||
{
|
||||
title: this.$t('electroniccontrollername'),
|
||||
align: 'left',
|
||||
dataIndex: 'electroniccontrollername',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'electroniccontrollername' },
|
||||
},
|
||||
{
|
||||
title: this.$t('electroniccontrollerproductionenterprises'),
|
||||
align: 'left',
|
||||
dataIndex: 'electroniccontrollerproductionenterprises',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'electroniccontrollerproductionenterprises' },
|
||||
},
|
||||
{
|
||||
title: this.$t('electroniccontrollertype'),
|
||||
align: 'left',
|
||||
dataIndex: 'electroniccontrollertype',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'electroniccontrollertype' },
|
||||
},
|
||||
{
|
||||
title: this.$t('hardwareversioninformation'),
|
||||
align: 'left',
|
||||
dataIndex: 'hardwareversioninformation',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'hardwareversioninformation' },
|
||||
},
|
||||
{
|
||||
title: this.$t('initialsoftwareversionnumber'),
|
||||
align: 'left',
|
||||
dataIndex: 'initialsoftwareversionnumber',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'initialsoftwareversionnumber' },
|
||||
},
|
||||
{
|
||||
title: this.$t('initialpackageforintegrityinflammatorydata'),
|
||||
align: 'left',
|
||||
dataIndex: 'initialpackageforintegrityinflammatorydata',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'initialpackageforintegrityinflammatorydata' },
|
||||
},
|
||||
{
|
||||
title: this.$t('environmentalprotection'),
|
||||
align: 'left',
|
||||
dataIndex: 'environmentalprotection',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'environmentalprotection' },
|
||||
},
|
||||
{
|
||||
title: this.$t('operatingsystemtype'),
|
||||
align: 'left',
|
||||
dataIndex: 'operatingsystemtype',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'operatingsystemtype' },
|
||||
},
|
||||
{
|
||||
title: this.$t('operatingsystemmanufacturer'),
|
||||
align: 'left',
|
||||
dataIndex: 'operatingsystemmanufacturer',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'operatingsystemmanufacturer' },
|
||||
},
|
||||
{
|
||||
title: this.$t('operatingsystemversion'),
|
||||
align: 'left',
|
||||
dataIndex: 'operatingsystemversion',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'operatingsystemversion' },
|
||||
},
|
||||
]
|
||||
},
|
||||
@@ -198,12 +293,63 @@
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
form:[{}],
|
||||
type:'',
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
// 模板下载
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxKsjxtmccs/exportTemplate', '可在线升级的系统名称与参数' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
}
|
||||
getAction('/ota/otaBaCxKsjxtmccs/queryByOtaId',{otaIdT:otaIdT,otaId:localStorage.getItem('otaId')}).then(res=>{
|
||||
if(res.code==200){
|
||||
if(res.result.list.length==0){
|
||||
this.dataSource= [
|
||||
{
|
||||
xtlb:'动力系统',
|
||||
key:'1'
|
||||
},
|
||||
{
|
||||
xtlb:'传动系统',
|
||||
key:'2'
|
||||
},
|
||||
{
|
||||
xtlb:'转向系统',
|
||||
key:'3'
|
||||
},
|
||||
{
|
||||
xtlb:'制动系统',
|
||||
key:'4'
|
||||
},
|
||||
{
|
||||
xtlb:'车身系统',
|
||||
key:'5'
|
||||
},
|
||||
{
|
||||
xtlb:'车载能源系统',
|
||||
key:'6'
|
||||
},
|
||||
]
|
||||
}else{
|
||||
res.result.list.forEach(item =>{
|
||||
item.sfksj =Number(item.sfksj)
|
||||
})
|
||||
this.dataSource=res.result.list
|
||||
this.fileList = res.result.fj
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
getList() {
|
||||
// let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
// Object.keys(queryParam).forEach(val => {
|
||||
@@ -233,29 +379,88 @@
|
||||
// })
|
||||
},
|
||||
last(){
|
||||
this.save()
|
||||
this.$emit('upgradedonlineup')
|
||||
},
|
||||
next(){
|
||||
this.save()
|
||||
this.$emit('upgradedonlinedown')
|
||||
},
|
||||
uploadSuccess(data) {
|
||||
// let attIdList = []
|
||||
// if (data && data.length > 0) {
|
||||
// data.map(item => {
|
||||
// attIdList.push({
|
||||
// id:item.id,
|
||||
// fileName:item.fileName
|
||||
// })
|
||||
// })
|
||||
// }
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push(item.id || data.name)
|
||||
})
|
||||
}
|
||||
this.dataSource.forEach((item) => {
|
||||
if(item.key == this.type){
|
||||
item.tpt = attIdList.join(',')
|
||||
}
|
||||
})
|
||||
this.$forceUpdate()
|
||||
// /** 赋值给当前对应的表单文件 */
|
||||
// this.fileList.uploadName = attIdList
|
||||
// this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
clickButtonToUpload() {
|
||||
uploadSuccessOta(data) {
|
||||
let attIdList = []
|
||||
if (data && data.length > 0) {
|
||||
data.map(item => {
|
||||
attIdList.push(item.id || data.name)
|
||||
})
|
||||
}
|
||||
this.$forceUpdate()
|
||||
// /** 赋值给当前对应的表单文件 */
|
||||
this.fileList = attIdList.join(',')
|
||||
// this.fileList.certifyingmaterials = this.$t('viewFile')
|
||||
},
|
||||
clickButtonToUpload(current,index) {
|
||||
this.type = index
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
this.$refs.uploadFile.visible = true
|
||||
this.uploadName = current
|
||||
getAction('sys/common/getFileInfos', { id: current }).then((res) => {
|
||||
if (res.success) {
|
||||
this.$refs.uploadFile.perentHandleFunc(res.result)
|
||||
} else {
|
||||
this.$refs.uploadFile.perentHandleFunc()
|
||||
}
|
||||
})
|
||||
},
|
||||
clickButtonToUploadota(current) {
|
||||
this.$refs.uploadFileOta.perentHandleFunc()
|
||||
this.$refs.uploadFileOta.visible = true
|
||||
this.uploadName = current
|
||||
getAction('sys/common/getFileInfos', { id: current }).then((res) => {
|
||||
if (res.success) {
|
||||
this.$refs.uploadFileOta.perentHandleFunc(res.result)
|
||||
} else {
|
||||
this.$refs.uploadFileOta.perentHandleFunc()
|
||||
}
|
||||
})
|
||||
},
|
||||
//中间加
|
||||
addlineAtMid(record){
|
||||
let randomNum=Math.floor(Math.random()*99999999999+1)
|
||||
let obj = {xtlb:record.xtlb,key:randomNum}
|
||||
|
||||
this.dataSource.splice(this.dataSource.indexOf(record)+1,0,obj)
|
||||
},
|
||||
//最后一行加
|
||||
addlineAtBot(){
|
||||
let randomNum=Math.floor(Math.random()*99999999999+1)
|
||||
let obj={key:randomNum}
|
||||
this.dataSource.push(obj)
|
||||
},
|
||||
deleteData(record){
|
||||
this.dataSource.splice(this.dataSource.indexOf(record),1)
|
||||
},
|
||||
save(){
|
||||
postAction('/ota/otaBaCxKsjxtmccs/add',{otaId:localStorage.getItem('otaId'),list:this.dataSource,fj:this.fileList}).then(res => {
|
||||
console.log(res);
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -279,4 +484,8 @@
|
||||
::v-deep .ant-table-row-cell-ellipsis .ant-table-column-title {
|
||||
white-space: pre-wrap!important;
|
||||
}
|
||||
::v-deep .ant-table-row:first-child {
|
||||
background: #fff !important;
|
||||
opacity: 3.9 !important;
|
||||
}
|
||||
</style>
|
||||
@@ -15,25 +15,25 @@
|
||||
</div>
|
||||
<a-tabs class="tabs" v-model="tabActive" @change="callback">
|
||||
<a-tab-pane disabled :key="$t('basicinformationofvehicletype')" :tab="$t('basicinformationofvehicletype')">
|
||||
<basicInformation v-if="tabActive == $t('basicinformationofvehicletype')" @basicInformationForm='basicInformationForm' ref="dealtWithRef"/>
|
||||
<basicInformation v-if="tabActive == $t('basicinformationofvehicletype')" @basicInformationForm='basicInformationForm' ref="dealtWithRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('onlineupgraderequirements')" :tab="$t('onlineupgraderequirements')">
|
||||
<upgradeRequirements v-if="tabActive == $t('onlineupgraderequirements')" @upgradeRequirementsup='upgradeRequirementsup' @upgradeRequirementsdown='upgradeRequirementsdown' ref="doneListRef"/>
|
||||
<upgradeRequirements v-if="tabActive == $t('onlineupgraderequirements')" @upgradeRequirementsup='upgradeRequirementsup' @upgradeRequirementsdown='upgradeRequirementsdown' ref="doneListRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('safetymeasure')" :tab="$t('safetymeasure')">
|
||||
<safetyPrecautions v-if="tabActive == $t('safetymeasure')" @safetyPrecautionsup='safetyPrecautionsup' @safetyPrecautionsdown='safetyPrecautionsdown' ref="SentListRef"/>
|
||||
<safetyPrecautions v-if="tabActive == $t('safetymeasure')" @safetyPrecautionsup='safetyPrecautionsup' @safetyPrecautionsdown='safetyPrecautionsdown' ref="SentListRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('upgradedonline')" :tab="$t('upgradedonline')">
|
||||
<upgradedonline v-if="tabActive == $t('upgradedonline')" @upgradedonlineup='upgradedonlineup' @upgradedonlinedown='upgradedonlinedown' ref="upgradedonlineRef"/>
|
||||
<upgradedonline v-if="tabActive == $t('upgradedonline')" @upgradedonlineup='upgradedonlineup' @upgradedonlinedown='upgradedonlinedown' ref="upgradedonlineRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('beupgradedonline')" :tab="$t('beupgradedonline')">
|
||||
<beupgradedonline v-if="tabActive == $t('beupgradedonline')" @beupgradedonlineup='beupgradedonlineup' @beupgradedonlinedown='beupgradedonlinedown' ref="beupgradedonlineRef"/>
|
||||
<beupgradedonline v-if="tabActive == $t('beupgradedonline')" @beupgradedonlineup='beupgradedonlineup' @beupgradedonlinedown='beupgradedonlinedown' ref="beupgradedonlineRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('recordparameters')" :tab="$t('recordparameters')">
|
||||
<recordparameters v-if="tabActive == $t('recordparameters')" @recordparametersup='recordparametersup' @recordparametersdown='recordparametersdown' ref="recordparametersRef"/>
|
||||
<recordparameters v-if="tabActive == $t('recordparameters')" @recordparametersup='recordparametersup' @recordparametersdown='recordparametersdown' ref="recordparametersRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('other')" :tab="$t('other')">
|
||||
<other v-if="tabActive == $t('other')" @otherup='otherup' ref="otherRef"/>
|
||||
<other v-if="tabActive == $t('other')" @otherup='otherup' ref="otherRef" />
|
||||
</a-tab-pane>
|
||||
<a-tab-pane disabled :key="$t('historicalrecord')" :tab="$t('historicalrecord')">
|
||||
<historicalrecord v-if="tabActive == $t('historicalrecord')" ref="historicalrecordRef" @historicalrecordup='historicalrecordup'/>
|
||||
@@ -132,7 +132,7 @@ export default {
|
||||
columnshistory: [
|
||||
{
|
||||
title: this.$t('fillincontent'),
|
||||
dataIndex: 'logContent',
|
||||
dataIndex: 'content',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'content' },
|
||||
@@ -140,7 +140,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: this.$t('module'),
|
||||
dataIndex: 'remarks',
|
||||
dataIndex: 'module',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 100,
|
||||
@@ -148,7 +148,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: this.$t('completedBy'),
|
||||
dataIndex: 'createTime',
|
||||
dataIndex: 'createBy',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 130
|
||||
@@ -162,7 +162,8 @@ export default {
|
||||
},
|
||||
],
|
||||
toggleSearchStatus: false,
|
||||
tabActive: this.$t('basicinformationofvehicletype')
|
||||
tabActive: this.$t('basicinformationofvehicletype'),
|
||||
otaId:''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -174,17 +175,16 @@ export default {
|
||||
},
|
||||
fillintherecordClick(){
|
||||
this.visible = true
|
||||
return
|
||||
this.bussLogList()
|
||||
},
|
||||
bussLogList(val) {
|
||||
let query = {
|
||||
pageNo: this.pageNohistory,
|
||||
pageSize: this.pageSizehistory,
|
||||
paramsReportDetailId: this.paramsReportDetailId
|
||||
otaId:localStorage.getItem('otaId')
|
||||
}
|
||||
this.loading = true
|
||||
getAction('report/detailLog/page', query).then((res) => {
|
||||
getAction('ota/otaBaCxTxjl/page', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSourcehistory = res.result.records
|
||||
this.total = res.result.total
|
||||
@@ -216,36 +216,44 @@ export default {
|
||||
},
|
||||
basicInformationForm(){
|
||||
this.tabActive = this.$t('onlineupgraderequirements')
|
||||
|
||||
},
|
||||
upgradeRequirementsup(){
|
||||
this.tabActive = this.$t('basicinformationofvehicletype')
|
||||
|
||||
},
|
||||
upgradeRequirementsdown(){
|
||||
this.tabActive = this.$t('safetymeasure')
|
||||
},
|
||||
safetyPrecautionsup(){
|
||||
this.tabActive = this.$t('onlineupgraderequirements')
|
||||
|
||||
},
|
||||
safetyPrecautionsdown(){
|
||||
this.tabActive = this.$t('upgradedonline')
|
||||
},
|
||||
upgradedonlineup(){
|
||||
this.tabActive = this.$t('safetymeasure')
|
||||
|
||||
},
|
||||
upgradedonlinedown(){
|
||||
this.tabActive = this.$t('beupgradedonline')
|
||||
|
||||
},
|
||||
beupgradedonlineup(){
|
||||
this.tabActive = this.$t('upgradedonline')
|
||||
|
||||
},
|
||||
beupgradedonlinedown(){
|
||||
this.tabActive = this.$t('recordparameters')
|
||||
|
||||
},
|
||||
recordparametersup(){
|
||||
this.tabActive = this.$t('beupgradedonline')
|
||||
},
|
||||
recordparametersdown(){
|
||||
this.tabActive = this.$t('other')
|
||||
|
||||
},
|
||||
otherup(){
|
||||
this.tabActive = this.$t('recordparameters')
|
||||
|
||||
@@ -14,11 +14,11 @@
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('recordstatus')">
|
||||
{{$t('recordstatus')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="recordstatus">
|
||||
<a-form-model-item class="itemModel" prop="bazt">
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.bazt"
|
||||
:placeholder="$t('PleaseSelect')+$t('recordstatus')"
|
||||
:type="'select'"
|
||||
@@ -29,17 +29,17 @@
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('filingtime')">
|
||||
{{$t('filingtime')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="filingtime">
|
||||
<a-form-model-item class="itemModel" prop="batjsj">
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('filingtime')"
|
||||
@change="dateChange({db_field_name:'batjs'})"
|
||||
@change="dateChange({db_field_name:'batjsj'})"
|
||||
format="YYYY-MM-DD"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.batjs"
|
||||
v-model="formInline.batjsj"
|
||||
style="width: 100%"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
@@ -75,23 +75,25 @@ export default {
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
formInline: {
|
||||
batjs:'',
|
||||
bazt:'',
|
||||
batjsj:'',
|
||||
bz:'',
|
||||
},
|
||||
rules: {
|
||||
// listConfirmation: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t('confirmationOfRegulationsList') + this.$t('cannotEmpty'),
|
||||
// trigger: 'change'
|
||||
// }
|
||||
// ],
|
||||
// legalTaskConfirmation: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t('regulatoryTaskConfirmation') + this.$t('cannotEmpty'),
|
||||
// trigger: 'change'
|
||||
// }
|
||||
// ],
|
||||
bazt: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('recordstatus') + this.$t('cannotEmpty'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
batjsj: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('filingtime') + this.$t('cannotEmpty'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
// designDeadline: [
|
||||
// {
|
||||
// required: true,
|
||||
@@ -128,7 +130,7 @@ export default {
|
||||
// }
|
||||
// ]
|
||||
},
|
||||
ids: []
|
||||
ids: ''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -136,11 +138,12 @@ export default {
|
||||
methods: {
|
||||
edit(row) {
|
||||
if(row instanceof Array){
|
||||
this.ids = row
|
||||
this.ids = row.join(',')
|
||||
}else{
|
||||
this.formInline.bazt = row.bazt
|
||||
this.formInline.batjs = row.batjs
|
||||
this.formInline.bazt = row.bazt ? row.bazt : undefined
|
||||
this.formInline.batjsj = row.batjsj
|
||||
this.formInline.bz = row.bz
|
||||
this.ids = row.id
|
||||
}
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
@@ -152,12 +155,10 @@ export default {
|
||||
if (valid) {
|
||||
let query = {
|
||||
...this.formInline,
|
||||
id:this.ids.join(',')
|
||||
ids:this.ids
|
||||
}
|
||||
this.confirmLoading = true
|
||||
postAction('ota/otaBaCxList/batchRecord', {
|
||||
recordList: query
|
||||
}).then((res) => {
|
||||
postAction('ota/otaBaCxList/batchRecord', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
@@ -173,9 +174,10 @@ export default {
|
||||
},
|
||||
handleCancel() {
|
||||
this.formInline = {
|
||||
batjs:''
|
||||
}
|
||||
this.ids = []
|
||||
bazt:'',
|
||||
batjsj:'',
|
||||
bz:'',}
|
||||
this.ids = ''
|
||||
this.visible = false
|
||||
},
|
||||
dateChange(item) {
|
||||
|
||||
@@ -7,19 +7,19 @@
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('upgraderegistrationnumber')">
|
||||
<span>{{$t('upgraderegistrationnumber')}}</span>
|
||||
<span>{{ $t('upgraderegistrationnumber') }}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('upgraderegistrationnumber')"
|
||||
v-model="queryParam.cpdjbh"></a-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('upgraderegistrationnumber')"
|
||||
v-model="queryParam.cpdjbh"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('noticebatch')">
|
||||
<span>{{$t('noticebatch')}}</span>
|
||||
<span>{{ $t('noticebatch') }}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('noticebatch')"
|
||||
v-model="queryParam.ggpc"></a-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('noticebatch')"
|
||||
v-model="queryParam.ggpc"></a-input>
|
||||
<!-- <j-multi-select-tag class="box-input" v-model="queryParam.noticebatch"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('noticebatch')"-->
|
||||
<!-- :type="'select'"-->
|
||||
@@ -29,10 +29,10 @@
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text tree-select">
|
||||
<div class="title-text" :title="$t('producttrademark')">
|
||||
<span>{{$t('producttrademark')}}</span>
|
||||
<span>{{ $t('producttrademark') }}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('producttrademark')"
|
||||
v-model="queryParam.cpsb"></a-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('producttrademark')"
|
||||
v-model="queryParam.cpsb"></a-input>
|
||||
<!-- <j-multi-select-tag class="box-input" v-model="queryParam.producttrademark"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('producttrademark')"-->
|
||||
<!-- :type="'select'"-->
|
||||
@@ -43,10 +43,10 @@
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('productname')">
|
||||
<span>{{$t('productname')}}</span>
|
||||
<span>{{ $t('productname') }}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('productname')"
|
||||
v-model="queryParam.cpmc"></a-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('productname')"
|
||||
v-model="queryParam.cpmc"></a-input>
|
||||
<!-- <a-select :placeholder="$t('PleaseSelect')+$t('productname')"-->
|
||||
<!-- class="box-input"-->
|
||||
<!-- :getPopupContainer="triggerNode=> triggerNode.parentNode"-->
|
||||
@@ -65,10 +65,10 @@
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('productModel')">
|
||||
<span>{{$t('productModel')}}</span>
|
||||
<span>{{ $t('productModel') }}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('productModel')"
|
||||
v-model="queryParam.cpxh"></a-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('productModel')"
|
||||
v-model="queryParam.cpxh"></a-input>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="queryParam.productModel"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('productModel')"-->
|
||||
<!-- :type="'select'"-->
|
||||
@@ -77,96 +77,67 @@
|
||||
</a-col>
|
||||
</template>
|
||||
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||
<a-col :md="6" :sm="24">
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
|
||||
<a @click="handleToggleSearch" style="margin-left: 8px">
|
||||
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
||||
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
|
||||
</a>
|
||||
</a-col>
|
||||
</span>
|
||||
<a-col :md="6" :sm="24">
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{ $t('reset') }}</a-button>
|
||||
<a @click="handleToggleSearch" style="margin-left: 8px">
|
||||
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
||||
<a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
|
||||
</a>
|
||||
</a-col>
|
||||
</span>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
<div class="table-operator">
|
||||
<div @click="createvehicleandfunctionrecords"
|
||||
v-has="'regulatoryAndTechnicalAssessment:initiationProcess'"
|
||||
class="operator-text">
|
||||
<a-icon type="plus"/>
|
||||
{{$t('createvehicleandfunctionrecords')}}
|
||||
<div @click="createvehicleandfunctionrecords" v-has="'regulatoryAndTechnicalAssessment:initiationProcess'"
|
||||
class="operator-text">
|
||||
<a-icon type="plus" />
|
||||
{{ $t('createvehicleandfunctionrecords') }}
|
||||
</div>
|
||||
<div @click="citeforrecord"
|
||||
v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
||||
class="operator-text">
|
||||
<a-icon type="solution"/>
|
||||
{{$t('citeforrecord')}}
|
||||
<div @click="citeforrecord" v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
||||
<a-icon type="solution" />
|
||||
{{ $t('citeforrecord') }}
|
||||
</div>
|
||||
<div @click="maintenanceallClick()"
|
||||
v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
||||
class="operator-text">
|
||||
<a-icon type="setting"/>
|
||||
{{$t('datamaintenance')}}
|
||||
<div @click="maintenanceallClick()" v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
||||
<a-icon type="setting" />
|
||||
{{ $t('datamaintenance') }}
|
||||
</div>
|
||||
<div v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
||||
class="operator-text">
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true"
|
||||
:accept="'.zip'"/>
|
||||
<div v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
||||
</div>
|
||||
<div @click="handleModule"
|
||||
v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
||||
class="operator-text">
|
||||
<a-icon type="download"/>
|
||||
{{$t('templateDownload')}}
|
||||
<div @click="handleModule" v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
||||
<a-icon type="download" />
|
||||
{{ $t('templateDownload') }}
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<a-table
|
||||
ref="table"
|
||||
size="middle"
|
||||
:components="drag(columns,'columns')"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 140px)'}"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
:columns="columns"
|
||||
>
|
||||
<a-table ref="table" size="middle" :components="drag(columns, 'columns')" :loading="loading" :pagination="false"
|
||||
:scroll="{ x: '100%', y: 'calc(100vh - 140px)' }" rowKey="id" :data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :columns="columns">
|
||||
<!-- -->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<!-- <a class="text-operation" @click="viewProcessClick(record)">{{$t('viewProcess')}}</a>-->
|
||||
<!-- <a class="text-operation" @click="viewProcessClick(record)">{{$t('viewProcess')}}</a>-->
|
||||
<!-- v-if="record.flowStatus == 'Completed'"-->
|
||||
<a class="text-operation"
|
||||
@click="detailclick(record)">{{$t('See')}}</a>
|
||||
<a class="text-operation"
|
||||
@click="maintenanceClick(record)">{{$t('maintenance')}}</a>
|
||||
<a class="text-operation"
|
||||
@click="handleExport(record)">{{$t('export')}}</a>
|
||||
<a class="text-operation"
|
||||
v-has="'regulatoryAndTechnicalAssessment:delete'"
|
||||
@click="deleteData(record)">{{$t('delete')}}</a>
|
||||
<a class="text-operation" @click="detailclick(record)">{{ $t('See') }}</a>
|
||||
<a class="text-operation" @click="maintenanceClick(record)">{{ $t('maintenance') }}</a>
|
||||
<a class="text-operation" @click="handleExport(record)">{{ $t('export') }}</a>
|
||||
<a class="text-operation" v-has="'regulatoryAndTechnicalAssessment:delete'"
|
||||
@click="deleteData(record)">{{ $t('delete') }}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="page" v-if="dataSource && dataSource.length > 0">
|
||||
<a-pagination
|
||||
:show-total="total => $t('total')+` ${total} `+$t('strip')"
|
||||
show-quick-jumper
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:current="pageNo"
|
||||
@change="pageOnChange"
|
||||
@showSizeChange="SizeChange"
|
||||
/>
|
||||
<a-pagination :show-total="total => $t('total') + ` ${total} ` + $t('strip')" show-quick-jumper show-size-changer
|
||||
:page-size.sync="pageSize" :total="total" :current="pageNo" @change="pageOnChange"
|
||||
@showSizeChange="SizeChange" />
|
||||
</div>
|
||||
</div>
|
||||
<maintenance @getList="getList" ref="maintenanceRef"/>
|
||||
<maintenance @getList="getList" ref="maintenanceRef" />
|
||||
</a-card>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import maintenance from './components/maintenance'
|
||||
import { mapGetters } from 'vuex'
|
||||
import { ResizeHeader, ResizeColumnProvide } from '@/mixins/header'
|
||||
@@ -178,13 +149,15 @@ export default {
|
||||
maintenance,
|
||||
ImportFile
|
||||
},
|
||||
mixins:[ResizeHeader, ResizeColumnProvide],
|
||||
mixins: [ResizeHeader, ResizeColumnProvide],
|
||||
data() {
|
||||
return {
|
||||
//url传参严格按照当前命名
|
||||
url: {
|
||||
list: '/lawsTechnologyEvaluation/lawsTechnologyEvaluationEO/page',
|
||||
deleteBatch: '/lawsTechnologyEvaluation/lawsTechnologyEvaluationEO/deleteBatch'
|
||||
deleteBatch: '/lawsTechnologyEvaluation/lawsTechnologyEvaluationEO/deleteBatch',
|
||||
exportData: '/ota/otaBaCxList/exportData',
|
||||
importZipUrl: '/ota/otaBaCxList/importData',//导入
|
||||
},
|
||||
visible: false,
|
||||
loading: false,
|
||||
@@ -269,14 +242,14 @@ export default {
|
||||
align: 'left',
|
||||
width: 140,
|
||||
ellipsis: true,
|
||||
dataIndex: 'bazt'
|
||||
dataIndex: 'bazt_dictText'
|
||||
},
|
||||
{
|
||||
title: this.$t('filingtime'),
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 140,
|
||||
dataIndex: 'batjs'
|
||||
dataIndex: 'batjsj'
|
||||
},
|
||||
{
|
||||
title: this.$t('createTime'),
|
||||
@@ -371,7 +344,7 @@ export default {
|
||||
this.$confirm({
|
||||
content: _this.$t('ConfirmDelete'),
|
||||
onOk() {
|
||||
deleteAction(_this.url.deleteBatch, { ids: val.id }).then((res) => {
|
||||
deleteAction('ota/otaBaCxList/delete', { id: val.id }).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.getList()
|
||||
@@ -383,11 +356,33 @@ export default {
|
||||
})
|
||||
},
|
||||
// 引用备案
|
||||
citeforrecord(){
|
||||
|
||||
citeforrecord() {
|
||||
if( this.selectedRowKeys.length == 0 ){
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}else{
|
||||
if ( this.selectedRowKeys.length > 1){
|
||||
this.$message.warning(this.$t('OnlyOneSelected'))
|
||||
}else{
|
||||
localStorage.removeItem('otaIdT')
|
||||
localStorage.removeItem('otaId')
|
||||
localStorage.setItem('otaIdT',this.selectedRowKeys[0])
|
||||
if(localStorage.getItem('otaIdT')!=null){
|
||||
this.$router.push({
|
||||
path: '/vehicleinformation',
|
||||
query: {
|
||||
type:1
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
// 创建车型
|
||||
createvehicleandfunctionrecords() {
|
||||
localStorage.removeItem('otaId')
|
||||
localStorage.removeItem('otaIdT')
|
||||
this.$router.push({
|
||||
path: '/vehicleinformation',
|
||||
query: {}
|
||||
@@ -398,46 +393,40 @@ export default {
|
||||
},
|
||||
// 导出
|
||||
handleExport(row) {
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||
let text = ''
|
||||
let text = '车型及功能备案' + row.ggpc
|
||||
let flag
|
||||
if (this.activeTab == this.$t('ImplementationDate')) {
|
||||
flag = 0
|
||||
text = this.$t('ImplementationDate')
|
||||
} else {
|
||||
text = this.$t('vehicleInProductionDate')
|
||||
flag = 1
|
||||
}
|
||||
let query = {
|
||||
id: selectedRowKeys.join(','),
|
||||
...this.searchParmes,
|
||||
flag: flag
|
||||
otaId: row.id
|
||||
}
|
||||
downloadFile(this.url.exportData, text + '.xls', query, this.Deselect)
|
||||
},
|
||||
// 结束升级
|
||||
endUpgrade(){
|
||||
this.$refs.upgradecompletionRef.addModel()
|
||||
downloadFile(this.url.exportData, text + '.zip', query, this.Deselect)
|
||||
},
|
||||
// 查看
|
||||
detailclick(){
|
||||
|
||||
detailclick(data) {
|
||||
console.log('data',data);
|
||||
localStorage.removeItem('otaIdT')
|
||||
localStorage.removeItem('otaId')
|
||||
localStorage.setItem('otaId',data.id)
|
||||
console.log('data',data.id);
|
||||
this.$router.push({
|
||||
path: '/vehicleinformation',
|
||||
query: {}
|
||||
})
|
||||
},
|
||||
// 维护
|
||||
maintenanceClick(row){
|
||||
maintenanceClick(row) {
|
||||
this.$refs.maintenanceRef.edit(row)
|
||||
},
|
||||
// 数据维护
|
||||
maintenanceallClick(){
|
||||
if(this.selectedRowKeys.length < 1){
|
||||
maintenanceallClick() {
|
||||
if (this.selectedRowKeys.length < 1) {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}else{
|
||||
} else {
|
||||
this.$refs.maintenanceRef.edit(this.selectedRowKeys)
|
||||
}
|
||||
},
|
||||
// 模板下载
|
||||
handleModule(){
|
||||
downloadFile('params/paramsInfo/exportTemplate', this.$t('parameterTemplateExportName') + '.xlsx', {})
|
||||
handleModule() {
|
||||
downloadFile('ota/otaBaCxList/exportTemplate', '车型及功能备案' + '.zip', {})
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
+4
-1
@@ -18,7 +18,7 @@
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-input class="box-input"
|
||||
v-model="formInline.configItem"
|
||||
v-model.trim="formInline.configItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('configurationItem')"/>
|
||||
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.configItem"-->
|
||||
@@ -226,6 +226,9 @@
|
||||
} else {
|
||||
url = this.url.setBatch
|
||||
}
|
||||
if (!query.configItem){
|
||||
query.configItem = undefined
|
||||
}
|
||||
postAction(url, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
|
||||
@@ -383,6 +383,7 @@
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:pageSizeOptions="['50','100','200','300']"
|
||||
:current="pageNo"
|
||||
@change="onChange"
|
||||
@showSizeChange="SizeChange"
|
||||
@@ -510,7 +511,7 @@
|
||||
return {
|
||||
queryParam: {},
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
pageSize: 50,
|
||||
total: 0,
|
||||
CertificationColor: {
|
||||
'Test passed': 'accordColor',
|
||||
@@ -737,7 +738,7 @@
|
||||
title: this.$t('operation'),
|
||||
align: 'left',
|
||||
fixed: 'right',
|
||||
width: 200,
|
||||
width: 230,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
|
||||
@@ -96,6 +96,7 @@ export default {
|
||||
dataIndex: 'serialNumber',
|
||||
width: 100,
|
||||
fixed: 'left',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'standard' }
|
||||
},
|
||||
{
|
||||
@@ -104,6 +105,7 @@ export default {
|
||||
dataIndex: 'title',
|
||||
width: 100,
|
||||
fixed: 'left',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'titleName' }
|
||||
},
|
||||
{
|
||||
|
||||
@@ -93,7 +93,7 @@ module.exports = {
|
||||
}
|
||||
}, */
|
||||
'/jero-boot': {
|
||||
target: 'http://localhost:8080', //请求本地 jero-boot后台项目
|
||||
target: 'http://10.0.3.22:8080', //请求本地 jero-boot后台项目
|
||||
// target: 'http://10.10.10.46:8101', //请求本地 jero-boot后台项目
|
||||
// target: 'http://10.0.1.25:8080',
|
||||
// target: 'http://10.0.1.5:8080',
|
||||
@@ -102,6 +102,5 @@ module.exports = {
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
lintOnSave: undefined
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user