Commit da352f96 authored by hanfeng's avatar hanfeng

修改车型标签

parent b086526f
...@@ -3,6 +3,7 @@ package com.xxfc.platform.tour.rest; ...@@ -3,6 +3,7 @@ package com.xxfc.platform.tour.rest;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.tour.biz.TourUserBiz; import com.xxfc.platform.tour.biz.TourUserBiz;
import com.xxfc.platform.tour.common.TourBaseController; import com.xxfc.platform.tour.common.TourBaseController;
import com.xxfc.platform.tour.entity.TourUser; import com.xxfc.platform.tour.entity.TourUser;
...@@ -50,7 +51,11 @@ public class TourUserController extends TourBaseController<TourUserBiz> { ...@@ -50,7 +51,11 @@ public class TourUserController extends TourBaseController<TourUserBiz> {
} }
/**
* 添加和更新
* @param tourUser
* @return
*/
@ApiOperation("插入和更新") @ApiOperation("插入和更新")
@PostMapping(value = "/app/addAndUpdate") @PostMapping(value = "/app/addAndUpdate")
...@@ -74,14 +79,15 @@ public class TourUserController extends TourBaseController<TourUserBiz> { ...@@ -74,14 +79,15 @@ public class TourUserController extends TourBaseController<TourUserBiz> {
return new ObjectRestResponse<TourUser>(); return new ObjectRestResponse<TourUser>();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
throw new BaseException("失败"); throw new BaseException(ResultCode.FAILED_CODE);
} }
} }
@ApiOperation("通过id查询") @ApiOperation("通过id查询")
@PostMapping(value = "/app/findById/{id}") @GetMapping(value = "/app/findById/{id}")
public ObjectRestResponse<TourUser> findById(@PathVariable Integer id){ public ObjectRestResponse<TourUser> findById(@PathVariable Integer id){
AppUserDTO userInfo = getUserInfo(); AppUserDTO userInfo = getUserInfo();
...@@ -106,6 +112,9 @@ public class TourUserController extends TourBaseController<TourUserBiz> { ...@@ -106,6 +112,9 @@ public class TourUserController extends TourBaseController<TourUserBiz> {
@GetMapping("/app/unauth/getTourUserList") @GetMapping("/app/unauth/getTourUserList")
public ObjectRestResponse getTourUser(){ public ObjectRestResponse getTourUser(){
AppUserDTO userInfo = getUserInfo(); AppUserDTO userInfo = getUserInfo();
if (userInfo==null||userInfo.getUserid()==null||userInfo.getUserid()==0) {
ObjectRestResponse.createDefaultFail();
}
Integer id = userInfo.getId(); Integer id = userInfo.getId();
List<TourUser> tourUsers= baseBiz.getTourUser(id); List<TourUser> tourUsers= baseBiz.getTourUser(id);
return ObjectRestResponse.succ(tourUsers); return ObjectRestResponse.succ(tourUsers);
......
...@@ -98,4 +98,15 @@ public class RedisKey { ...@@ -98,4 +98,15 @@ public class RedisKey {
*/ */
public static final String MILEAGE_LAST_DAY_PREFIX ="mileage:last_day:"; public static final String MILEAGE_LAST_DAY_PREFIX ="mileage:last_day:";
/**
* 标签列表缓存key
*/
public static final String BRANCH_COMPANY_CATA_PAGE = BRANCH_CATA_CACHE + ":page";
/**
* 增加车型列表key
*/
public static final String BRANCH_COMPANY_CATA_LIST = BRANCH_CATA_CACHE + ":list";
} }
...@@ -71,9 +71,9 @@ public class VehiclePlatCata implements Serializable { ...@@ -71,9 +71,9 @@ public class VehiclePlatCata implements Serializable {
private Long updTime; private Long updTime;
//是否多选 //是否多选
@Column(name = "ismore") @Column(name = "isMore")
@ApiModelProperty(value = "多选 0:单选 1:多选" ) @ApiModelProperty(value = "多选 0:单选 1:多选" )
private Integer ismore; private Integer isMore;
} }
...@@ -5,7 +5,13 @@ import lombok.Data; ...@@ -5,7 +5,13 @@ import lombok.Data;
import java.util.List; import java.util.List;
@Data @Data
public class Cascade <v> { public class Cascade <v> {
/**
* 一级标签
*/
v parent; v parent;
/**
* 二级子标签
*/
List<v> children; List<v> children;
public Cascade(v parent, List<v> children) { public Cascade(v parent, List<v> children) {
......
...@@ -17,6 +17,7 @@ import com.xxfc.platform.vehicle.mapper.VehiclePlatCataMapper; ...@@ -17,6 +17,7 @@ import com.xxfc.platform.vehicle.mapper.VehiclePlatCataMapper;
import com.xxfc.platform.vehicle.pojo.Cascade; import com.xxfc.platform.vehicle.pojo.Cascade;
import com.xxfc.platform.vehicle.pojo.CataVo; import com.xxfc.platform.vehicle.pojo.CataVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.assertj.core.util.Arrays;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -75,6 +76,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -75,6 +76,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
return obj; return obj;
} }
public List<Object> getChildren(Integer parentId) { public List<Object> getChildren(Integer parentId) {
List<Object> list = new ArrayList<>(); List<Object> list = new ArrayList<>();
List<VehiclePlatCata> children = getAll(parentId); List<VehiclePlatCata> children = getAll(parentId);
...@@ -137,11 +139,12 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -137,11 +139,12 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
* @return * @return
*/ */
@Transactional @Transactional
public ObjectRestResponse addCascades(Cascade<VehiclePlatCata> cascade) { public ObjectRestResponse addCascade(Cascade<VehiclePlatCata> cascade) {
try {
//取出一级标签 //取出一级标签
VehiclePlatCata parent = cascade.getParent(); VehiclePlatCata parent = cascade.getParent();
parent.setCrtTime(System.currentTimeMillis());
parent.setState(0);
//插入一级标签获得id //插入一级标签获得id
mapper.insertSelective(parent); mapper.insertSelective(parent);
Integer parentId = parent.getId(); Integer parentId = parent.getId();
...@@ -151,13 +154,11 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -151,13 +154,11 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
//逐条插入二级标签 //逐条插入二级标签
for (VehiclePlatCata children : childrens) { for (VehiclePlatCata children : childrens) {
children.setParentId(parentId); children.setParentId(parentId);
children.setState(0);
children.setCrtTime(System.currentTimeMillis());
} }
mapper.addPlatCataList(childrens); mapper.addPlatCataList(childrens);
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} catch (Exception e) {
e.printStackTrace();
throw new BaseException(ResultCode.FAILED_CODE);
}
} }
...@@ -170,7 +171,6 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -170,7 +171,6 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
*/ */
public ObjectRestResponse fingCatasByParentId(Integer parentId) { public ObjectRestResponse fingCatasByParentId(Integer parentId) {
Example example = Example.builder(VehiclePlatCata.class) Example example = Example.builder(VehiclePlatCata.class)
.where(WeekendSqls.<VehiclePlatCata>custom() .where(WeekendSqls.<VehiclePlatCata>custom()
.andEqualTo(VehiclePlatCata::getParentId, parentId) .andEqualTo(VehiclePlatCata::getParentId, parentId)
...@@ -193,58 +193,60 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -193,58 +193,60 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
*/ */
public ObjectRestResponse getCascades( Integer page, Integer limit ,Integer sort) { public ObjectRestResponse getCascades( Integer page, Integer limit ,Integer sort) {
try { try {
//标签列表页面 //标签列表页面
if (sort==null||sort==0) { if (sort==null||sort==0) {
return getPage(page, limit);
}
//增加车型页面
if (sort==1){
return getList();
}
} catch (Exception e) {
e.printStackTrace();
}
return ObjectRestResponse.createDefaultFail();
}
@Cache(key = RedisKey.BRANCH_COMPANY_CATA_LIST)
private ObjectRestResponse getList() {
//获取一级标签 //获取一级标签
Example example = Example.builder(VehiclePlatCata.class) Example example = Example.builder(VehiclePlatCata.class)
.where(WeekendSqls.<VehiclePlatCata>custom() .where(WeekendSqls.<VehiclePlatCata>custom()
.andEqualTo(VehiclePlatCata::getParentId, 0) .andEqualTo(VehiclePlatCata::getParentId, 0)
.andEqualTo(VehiclePlatCata::getState, 0)) .andEqualTo(VehiclePlatCata::getState, 0))
.orderByAsc("rank") .orderByAsc("isMore","rank")
.build(); .build();
//分页查询父类
//分页查询一级标签并分类 List<VehiclePlatCata> parentvpcs = mapper.selectByExample(example);
PageDataVO opdvo = PageDataVO.pageInfo(page, limit, () -> mapper.selectByExample(example));
List<VehiclePlatCata> parentvpcs = opdvo.getData();
//传入一级标签集集合,或去一二级标签集合 //传入一级标签集集合,或去一二级标签集合
ArrayList<Cascade<VehiclePlatCata>> cascades = getCascades(parentvpcs); ArrayList<Cascade<VehiclePlatCata>> cascades = getCascades(parentvpcs);
//用一二级标签集合,替换原来的一级标签集合 return ObjectRestResponse.succ(cascades);
opdvo.setData(cascades);
return ObjectRestResponse.succ(opdvo);
} }
@Cache(key = RedisKey.BRANCH_COMPANY_CATA_PAGE)
private ObjectRestResponse getPage(Integer page, Integer limit) {
//增加车型页面
if (sort==1){
//获取一级标签 //获取一级标签
Example example = Example.builder(VehiclePlatCata.class) Example example = Example.builder(VehiclePlatCata.class)
.where(WeekendSqls.<VehiclePlatCata>custom() .where(WeekendSqls.<VehiclePlatCata>custom()
.andEqualTo(VehiclePlatCata::getParentId, 0) .andEqualTo(VehiclePlatCata::getParentId, 0)
.andEqualTo(VehiclePlatCata::getState, 0)) .andEqualTo(VehiclePlatCata::getState, 0))
.orderByAsc("ismore","rank") .orderByAsc("rank")
.build(); .build();
//分页查询父类
List<VehiclePlatCata> parentvpcs = mapper.selectByExample(example); //分页查询一级标签并分类
PageDataVO opdvo = PageDataVO.pageInfo(page, limit, () -> mapper.selectByExample(example));
List<VehiclePlatCata> parentvpcs = opdvo.getData();
//传入一级标签集集合,或去一二级标签集合 //传入一级标签集集合,或去一二级标签集合
ArrayList<Cascade<VehiclePlatCata>> cascades = getCascades(parentvpcs); ArrayList<Cascade<VehiclePlatCata>> cascades = getCascades(parentvpcs);
return ObjectRestResponse.succ(cascades); //用一二级标签集合,替换原来的一级标签集合
} opdvo.setData(cascades);
} catch (Exception e) { return ObjectRestResponse.succ(opdvo);
e.printStackTrace();
}
return ObjectRestResponse.createDefaultFail();
} }
/**
* 获取一二级标签集合
* @param parentvpcs
* @return
*/
private ArrayList<Cascade<VehiclePlatCata>> getCascades(List<VehiclePlatCata> parentvpcs) { private ArrayList<Cascade<VehiclePlatCata>> getCascades(List<VehiclePlatCata> parentvpcs) {
ArrayList<Cascade<VehiclePlatCata>> cascades = new ArrayList(); ArrayList<Cascade<VehiclePlatCata>> cascades = new ArrayList();
//获取二级标签 //获取二级标签
...@@ -286,61 +288,120 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -286,61 +288,120 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
return ObjectRestResponse.succ(new Cascade<VehiclePlatCata>(result, vpcs)); return ObjectRestResponse.succ(new Cascade<VehiclePlatCata>(result, vpcs));
} }
/** /**
* 更新 * 更新和添加
* @param cas * @param cas
* @return * @return
*/ */
@Transactional
public ObjectRestResponse updateCascade( Cascade<VehiclePlatCata> cas) { public ObjectRestResponse updateAndAdd( Cascade<VehiclePlatCata> cas) {
try {
if (cas==null||cas.getParent()==null) { if (cas==null||cas.getParent()==null) {
return ObjectRestResponse.createDefaultFail(); return ObjectRestResponse.createDefaultFail();
} }
VehiclePlatCata parentVPC = cas.getParent();
//通过判断一级标签是否有id来判断是更新还是添加 //通过判断一级标签是否有id来判断是更新还是添加
if (parentVPC.getId()==null||parentVPC.getId()==0) { if (cas.getParent().getId()==null||cas.getParent().getId()==0) {
//设置标签状态和创建时间 return addCascade(cas);
parentVPC.setState(0);
parentVPC.setCrtTime(System.currentTimeMillis());
//插入一级标签
insertSelective(parentVPC);
List<VehiclePlatCata> children = cas.getChildren();
if (children==null||children.size()==0) {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"无子标签");
}
mapper.addPlatCataList(children);
return ObjectRestResponse.succ();
}else{ }else{
return updateCascade(cas);
}
} catch (Exception e) {
e.printStackTrace();
return ObjectRestResponse.createDefaultFail();
}
}
/**
* 修改
* @param cas
* @return
*/
@Transactional
public ObjectRestResponse updateCascade(Cascade<VehiclePlatCata> cas) {
try {
VehiclePlatCata parentVPC = cas.getParent();
//设置更新时间 //设置更新时间
parentVPC.setUpdTime(System.currentTimeMillis()); parentVPC.setUpdTime(System.currentTimeMillis());
//更新一级标签 //更新一级标签
List<VehiclePlatCata> children = cas.getChildren();
updateSelectiveById(parentVPC); updateSelectiveById(parentVPC);
//获取子标签签
List<VehiclePlatCata> children = cas.getChildren();
//判断是否有子标签
if (children==null||children.size()==0) { if (children==null||children.size()==0) {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"无子标签"); return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"无子标签");
} }
//遍历
for (VehiclePlatCata child : children) { for (VehiclePlatCata child : children) {
//判断子标签是更新还是新增 //判断子标签是更新还是新增
if (child.getId()==null){ if (child.getId()==null){
child.setState(0);
child.setUpdTime(System.currentTimeMillis());
//添加
insertSelective(child); insertSelective(child);
}else { }else {
//判断更新的是否是删除 //判断是否是删除
if (child.getState()==1) { if (child.getState()==1) {
Integer id = child.getId(); Integer id = child.getId();
VehicleCata vehicleCata = new VehicleCata(); VehicleCata vehicleCata = new VehicleCata();
vehicleCata.setCataId(id);
//修改车型和标签的中间表 //修改车型和标签的中间表
vehicleCataBiz.delete(vehicleCata); vehicleCataBiz.delete(vehicleCata);
} }
//更新
child.setUpdTime(System.currentTimeMillis());
updateSelectiveById(child);
}
}
return ObjectRestResponse.succ();
} catch (Exception e) {
e.printStackTrace();
throw new BaseException(ResultCode.FAILED_CODE);
}
} }
/**
* 修改rank
* @param id
* @param rank
* @return
*/
public ObjectRestResponse updateParentRank(Integer id, Integer rank){
try {
VehiclePlatCata vehiclePlatCata = new VehiclePlatCata();
vehiclePlatCata.setId(id);
vehiclePlatCata.setRank(rank);
updateSelectiveById(vehiclePlatCata);
return ObjectRestResponse.succ();
} catch (Exception e) {
e.printStackTrace();
return ObjectRestResponse.createDefaultFail();
} }
VehiclePlatCata parent = cas.getParent();
} }
return null; /**
* 查询当前车型拥有的标签
* @param ids
* @return
*/
public ObjectRestResponse getCatasByIds( String ids){
Example exa = Example.builder(VehiclePlatCata.class).where(
WeekendSqls.<VehiclePlatCata>custom()
.andIn(VehiclePlatCata::getId, Arrays.asList(ids.split(",")))
.andEqualTo(VehiclePlatCata::getState,0)
).build();
List<VehiclePlatCata> vehiclePlatCatas = selectByExample(exa);
return ObjectRestResponse.succ(vehiclePlatCatas);
} }
} }
...@@ -9,5 +9,5 @@ import java.util.List; ...@@ -9,5 +9,5 @@ import java.util.List;
public interface VehiclePlatCataMapper extends Mapper<VehiclePlatCata> { public interface VehiclePlatCataMapper extends Mapper<VehiclePlatCata> {
int addPlatCataList(@Param("list") List<VehiclePlatCata> list); int addPlatCataList(@Param("vpclist") List<VehiclePlatCata> vpclist);
} }
\ No newline at end of file
...@@ -107,25 +107,50 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata ...@@ -107,25 +107,50 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata
@PostMapping(value = "/add/addCascade/") @PostMapping(value = "/add/addCascade/")
public ObjectRestResponse addCascade(@RequestBody Cascade<VehiclePlatCata> cascade){ public ObjectRestResponse addCascade(@RequestBody Cascade<VehiclePlatCata> cascade){
return baseBiz.addCascades(cascade); try {
return baseBiz.addCascade(cascade);
} catch (Exception e) {
e.printStackTrace();
return ObjectRestResponse.createDefaultFail();
}
} }
/** /**
* 修改和增加一二级标签 * 修改和增加一二级标签
* @param uc * @param cas
* @return * @return
*/ */
@PutMapping("/add/uc") @PostMapping("/add/updateAndAdd")
public ObjectRestResponse updateCascade(@RequestBody Cascade<VehiclePlatCata> uc){ public ObjectRestResponse updateAndAdd(@RequestBody Cascade<VehiclePlatCata> cas){
baseBiz.updateCascade(uc);
return null; return baseBiz.updateAndAdd(cas);
} }
/**
* 修改标签排序
* @param id
* @param rank
* @return
*/
@PutMapping("/add/updateParentRank/{id}/{rank}")
public ObjectRestResponse updateParentRank(@PathVariable Integer id,@PathVariable Integer rank){
return baseBiz.updateParentRank(id,rank);
}
/**
* 查询当前车型拥有的标签
* @param ids
* @return
*/
@GetMapping("/add/getCatasByIds/{ids}")
public ObjectRestResponse getCatasByIds(@PathVariable String ids){
return baseBiz.getCatasByIds(ids);
}
/* @RequestMapping(value = "/{id}", method = RequestMethod.GET) /* @RequestMapping(value = "/{id}", method = RequestMethod.GET)
public RestResponse<Vehicle> get(@PathVariable String id) { public RestResponse<Vehicle> get(@PathVariable String id) {
......
...@@ -6,13 +6,13 @@ ...@@ -6,13 +6,13 @@
<insert id="addPlatCataList" parameterType="java.util.List"> <insert id="addPlatCataList" parameterType="java.util.List">
insert into vehicle_cata ( insert into vehicle_plat_cata (
parent_id,name,icon,depict,rank,level,state,crt_time,upd_time,ismore parent_id,name,icon,depict,rank,level,state,crt_time,upd_time,isMore
) VALUES ) VALUES
<foreach collection ="list" item="item" index="index" separator =","> <foreach collection ="vpclist" item="vpc" index="index" separator =",">
(#{item.parentId},#{item.name},#{item.icon},#{item.depict} (#{vpc.parentId},#{vpc.name},#{vpc.icon},#{vpc.depict}
,#{item.rank},#{item.level},#{item.state},#{item.crtTime} ,#{vpc.rank},#{vpc.level},#{vpc.state},#{vpc.crtTime}
,#{item.updTime},#{item.ismore}) ,#{vpc.updTime},#{vpc.isMore})
</foreach> </foreach>
</insert> </insert>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment