Commit 05fbb5e5 authored by hezhen's avatar hezhen

添加车辆问题

parent e78a9a68
...@@ -104,4 +104,10 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -104,4 +104,10 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
return new TableResultResponse<User>(result.getTotal(), list); return new TableResultResponse<User>(result.getTotal(), list);
} }
} }
public List<User> getCountByUsername(String username){
User user = new User();
user.setUsername(username);
return mapper.select(user);
}
} }
...@@ -18,6 +18,7 @@ import com.github.wxiaoqi.security.common.rest.CommonBaseController; ...@@ -18,6 +18,7 @@ import com.github.wxiaoqi.security.common.rest.CommonBaseController;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import lombok.Data; import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -72,6 +73,13 @@ public class UserController extends CommonBaseController { ...@@ -72,6 +73,13 @@ public class UserController extends CommonBaseController {
@IgnoreClientToken @IgnoreClientToken
public ObjectRestResponse<User> add(@RequestBody UserVO vo){ public ObjectRestResponse<User> add(@RequestBody UserVO vo){
handleDataLimit(vo); handleDataLimit(vo);
String username=vo.getUsername();
if(StringUtils.isNotBlank(username)) {
List<User> list = userBiz.getCountByUsername(username);
if (list.size() > 0) {
throw new RuntimeException("用户名不能重复");
}
}
userBiz.insertSelective(vo); userBiz.insertSelective(vo);
//添加权限关系 //添加权限关系
groupBiz.modifyUserGroups(vo.getId(), vo.getMembers()); groupBiz.modifyUserGroups(vo.getId(), vo.getMembers());
...@@ -80,10 +88,11 @@ public class UserController extends CommonBaseController { ...@@ -80,10 +88,11 @@ public class UserController extends CommonBaseController {
private void handleDataLimit(@RequestBody UserVO dto) { private void handleDataLimit(@RequestBody UserVO dto) {
if(null != dto.getDataLimit()) { if(null != dto.getDataLimit()) {
if(dto.getDataLimit().contains(CURRENT_COMPANY)) { if(dto.getDataLimit().contains(CURRENT_COMPANY)&&dto.getCompanyId()!=null) {
dto.setDataCompany(dto.getCompanyId().toString()); dto.setDataCompany(dto.getCompanyId().toString());
} }
if(dto.getDataLimit().contains(CURRENT_ZONE)) { if(dto.getDataLimit().contains(CURRENT_ZONE)&&dto.getZoneId()!=null) {
dto.setDataZone(dto.getZoneId().toString()); dto.setDataZone(dto.getZoneId().toString());
} }
if(dto.getDataLimit().contains(DATA_ALL)) { if(dto.getDataLimit().contains(DATA_ALL)) {
...@@ -148,6 +157,19 @@ public class UserController extends CommonBaseController { ...@@ -148,6 +157,19 @@ public class UserController extends CommonBaseController {
@ResponseBody @ResponseBody
public ObjectRestResponse<User> update(@RequestBody UserVO vo){ public ObjectRestResponse<User> update(@RequestBody UserVO vo){
handleDataLimit(vo); handleDataLimit(vo);
String username=vo.getUsername();
if(StringUtils.isNotBlank(username)){
List<User> list=userBiz.getCountByUsername(username);
if(list.size()>1){
throw new RuntimeException("用户名不能重复");
}
if(list.size()==1){
User user=list.get(0);
if(user.getId()!=vo.getId()){
throw new RuntimeException("用户名不能重复");
}
}
}
userBiz.updateSelectiveById(vo); userBiz.updateSelectiveById(vo);
//添加权限关系 //添加权限关系
groupBiz.modifyUserGroups(vo.getId(), vo.getMembers()); groupBiz.modifyUserGroups(vo.getId(), vo.getMembers());
......
...@@ -306,7 +306,9 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> { ...@@ -306,7 +306,9 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
vehicleBookRecord.setRemark(bookVehicleVo.getRemark()); vehicleBookRecord.setRemark(bookVehicleVo.getRemark());
vehicleBookRecord.setDestination(bookVehicleVo.getDestination()); vehicleBookRecord.setDestination(bookVehicleVo.getDestination());
vehicleBookRecord.setLiftCompany(bookVehicleVo.getLiftCompany()); vehicleBookRecord.setLiftCompany(bookVehicleVo.getLiftCompany());
vehicleBookRecord.setRetCompany(bookVehicleVo.getRetCompany());
vehicleBookRecordMapper.insertSelective(vehicleBookRecord); vehicleBookRecordMapper.insertSelective(vehicleBookRecord);
Long bookRecordId=vehicleBookRecord.getId();
List<Map<String,Object>> params = Lists.newArrayList(); List<Map<String,Object>> params = Lists.newArrayList();
if(MapUtils.isNotEmpty(bookVehicleVo.getSelectedAccItem())){ if(MapUtils.isNotEmpty(bookVehicleVo.getSelectedAccItem())){
for(Map.Entry<Integer,Integer> idAndAmount : bookVehicleVo.getSelectedAccItem().entrySet()){ for(Map.Entry<Integer,Integer> idAndAmount : bookVehicleVo.getSelectedAccItem().entrySet()){
...@@ -318,7 +320,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> { ...@@ -318,7 +320,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
} }
bookRecordAccItemMapper.batchAdd(params); bookRecordAccItemMapper.batchAdd(params);
} }
return RestResponse.suc(); return RestResponse.suc(bookRecordId);
} }
@Transactional @Transactional
......
...@@ -31,6 +31,7 @@ import org.springframework.stereotype.Service; ...@@ -31,6 +31,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
...@@ -130,7 +131,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic ...@@ -130,7 +131,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
* @return * @return
* @throws Exception * @throws Exception
*/ */
public PageDataVo<QueryVehicleBookRecordVo> page(VehicleBookRecordQueryVo vehicleBookRecordQueryVo) throws Exception{ public PageDataVo<QueryVehicleBookRecordVo> page(VehicleBookRecordQueryVo vehicleBookRecordQueryVo,List<Integer> companyList) throws Exception{
Map<String, Object> params = PropertyUtils.describe(vehicleBookRecordQueryVo); Map<String, Object> params = PropertyUtils.describe(vehicleBookRecordQueryVo);
String selectedMonth = (String)params.get("selectedMonth"); String selectedMonth = (String)params.get("selectedMonth");
if(StringUtils.isBlank(selectedMonth)){ if(StringUtils.isBlank(selectedMonth)){
...@@ -150,6 +151,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic ...@@ -150,6 +151,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
Integer pageNo = (Integer) params.get("page"); Integer pageNo = (Integer) params.get("page");
params.remove("pageNo"); params.remove("pageNo");
PageHelper.startPage(pageNo,pageSize); PageHelper.startPage(pageNo,pageSize);
params.put("companyList", companyList);
List<QueryVehicleBookRecordVo> bookRecordAndVehicleInfo = mapper.getByPage(params); List<QueryVehicleBookRecordVo> bookRecordAndVehicleInfo = mapper.getByPage(params);
Map<Long,Map<Integer,Integer>> rs = getRelatedAccItemsAndAmount(bookRecordAndVehicleInfo, Map<Long,Map<Integer,Integer>> rs = getRelatedAccItemsAndAmount(bookRecordAndVehicleInfo,
bookRecordAccItemTbName); bookRecordAccItemTbName);
......
...@@ -45,9 +45,9 @@ public class VehicleUpkeepService { ...@@ -45,9 +45,9 @@ public class VehicleUpkeepService {
vehicleUpkeepItemMapper.deleteByPrimaryKey(id); vehicleUpkeepItemMapper.deleteByPrimaryKey(id);
} }
public PageInfo<VehicleUpkeepLogVo> pageLog(String numberPlate, Integer page, Integer limit) { public PageInfo<VehicleUpkeepLogVo> pageLog(String numberPlate, Integer page, Integer limit, List<Integer> companyList) {
PageHelper.startPage(page, limit); PageHelper.startPage(page, limit);
return new PageInfo<>(vehicleUpkeepLogMapper.selectVoAll(numberPlate)); return new PageInfo<>(vehicleUpkeepLogMapper.selectVoAll(numberPlate,companyList));
} }
public VehicleUpkeepLogVo getLogVoById(Integer id) { public VehicleUpkeepLogVo getLogVoById(Integer id) {
......
...@@ -9,7 +9,7 @@ import tk.mybatis.mapper.common.Mapper; ...@@ -9,7 +9,7 @@ import tk.mybatis.mapper.common.Mapper;
import java.util.List; import java.util.List;
public interface VehicleUpkeepLogMapper extends Mapper<VehicleUpkeepLog> { public interface VehicleUpkeepLogMapper extends Mapper<VehicleUpkeepLog> {
List<VehicleUpkeepLogVo> selectVoAll(@Param("numberPlate") String numberPlate); List<VehicleUpkeepLogVo> selectVoAll(@Param("numberPlate") String numberPlate,@Param("companyList")List<Integer> companyList);
VehicleUpkeepLogVo selectVoById(Integer id); VehicleUpkeepLogVo selectVoById(Integer id);
......
...@@ -146,9 +146,18 @@ public class VehicleController extends BaseController<VehicleBiz> { ...@@ -146,9 +146,18 @@ public class VehicleController extends BaseController<VehicleBiz> {
public RestResponse<Integer> applyVehicle(@RequestBody BookVehicleVo bookVehicleVo) throws Exception { public RestResponse<Integer> applyVehicle(@RequestBody BookVehicleVo bookVehicleVo) throws Exception {
Integer operatorId = Integer.parseInt(BaseContextHandler.getUserID()); Integer operatorId = Integer.parseInt(BaseContextHandler.getUserID());
String userName = BaseContextHandler.getName(); String userName = BaseContextHandler.getName();
return baseBiz.applyVehicle4Employee(operatorId, bookVehicleVo, userName); RestResponse<Integer> result= baseBiz.applyVehicle4Employee(operatorId, bookVehicleVo, userName);
if(result.getStatus()==200){
if(result.getData()!=null||result.getData()>0){
String id=result.getData()+"";
Long bookRecordId=Long.parseLong(id);
return baseBiz.reviewVehicleBooking(operatorId, bookRecordId, VehicleBookRecordStatus.APPROVE.getCode(), userName);
}
}
return result;
} }
/** /**
* 批准预定车辆预定 * 批准预定车辆预定
* *
...@@ -222,7 +231,14 @@ public class VehicleController extends BaseController<VehicleBiz> { ...@@ -222,7 +231,14 @@ public class VehicleController extends BaseController<VehicleBiz> {
VehicleBookRecordQueryVo vehicleBookRecordQueryVo = null; VehicleBookRecordQueryVo vehicleBookRecordQueryVo = null;
try { try {
vehicleBookRecordQueryVo = JSON.parseObject(vehicleBookRecordQueryVoJson, VehicleBookRecordQueryVo.class); vehicleBookRecordQueryVo = JSON.parseObject(vehicleBookRecordQueryVoJson, VehicleBookRecordQueryVo.class);
return RestResponse.data(vehicleBookRecordBiz.page(vehicleBookRecordQueryVo)); UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData();
List<Integer> companyList =new ArrayList<>();
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
}
}
return RestResponse.data(vehicleBookRecordBiz.page(vehicleBookRecordQueryVo,companyList));
} catch (JSONException ex) { } catch (JSONException ex) {
return RestResponse.code(ResCode.INVALID_REST_REQ_PARAM.getCode()); return RestResponse.code(ResCode.INVALID_REST_REQ_PARAM.getCode());
} catch (CustomIllegalParamException ex) { } catch (CustomIllegalParamException ex) {
......
package com.xinxincaravan.caravan.vehicle.rest; package com.xinxincaravan.caravan.vehicle.rest;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.xinxincaravan.caravan.vehicle.biz.VehicleBiz;
import com.xinxincaravan.caravan.vehicle.biz.VehicleUpkeepService; import com.xinxincaravan.caravan.vehicle.biz.VehicleUpkeepService;
import com.xinxincaravan.caravan.vehicle.common.RestResponse; import com.xinxincaravan.caravan.vehicle.common.RestResponse;
import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode; import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode;
import com.xinxincaravan.caravan.vehicle.entity.VehicleUpkeepItem; import com.xinxincaravan.caravan.vehicle.entity.VehicleUpkeepItem;
import com.xinxincaravan.caravan.vehicle.feign.UserFeign;
import com.xinxincaravan.caravan.vehicle.feign.dto.UserDTO;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
@RestController @RestController
@RequestMapping("upkeep") @RequestMapping("upkeep")
public class VehicleUpkeepController { public class VehicleUpkeepController {
...@@ -14,6 +22,16 @@ public class VehicleUpkeepController { ...@@ -14,6 +22,16 @@ public class VehicleUpkeepController {
@Autowired @Autowired
private VehicleUpkeepService vehicleUpkeepService; private VehicleUpkeepService vehicleUpkeepService;
@Autowired
VehicleBiz vehicleBiz;
@Autowired
UserFeign userFeign;
@Autowired
private UserAuthConfig userAuthConfig;
@Autowired
protected HttpServletRequest request;
@GetMapping("item/all") @GetMapping("item/all")
public RestResponse allItem() { public RestResponse allItem() {
...@@ -65,7 +83,14 @@ public class VehicleUpkeepController { ...@@ -65,7 +83,14 @@ public class VehicleUpkeepController {
page = 1; page = 1;
limit = 10; limit = 10;
} }
return RestResponse.suc(vehicleUpkeepService.pageLog(numberPlate, page, limit)); UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData();
List<Integer> companyList =new ArrayList<>();
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
}
}
return RestResponse.suc(vehicleUpkeepService.pageLog(numberPlate, page, limit,companyList));
} }
@GetMapping("log/{id}") @GetMapping("log/{id}")
......
...@@ -72,5 +72,8 @@ public class BookVehicleVo { ...@@ -72,5 +72,8 @@ public class BookVehicleVo {
*/ */
private Integer haveViolation; private Integer haveViolation;
//还车分公司
private Integer retCompany;
} }
\ No newline at end of file
...@@ -189,6 +189,7 @@ ...@@ -189,6 +189,7 @@
vehicle_book_record vehicle_book_record
where where
`book_end_date` between #{startDate} and #{endDate} `book_end_date` between #{startDate} and #{endDate}
order by id order by id
limit #{pageStart},#{pageSize} limit #{pageStart},#{pageSize}
</select> </select>
...@@ -243,6 +244,23 @@ ...@@ -243,6 +244,23 @@
vehicle_book_info vbf on vbf.vehicle = vbr.vehicle and vbf.year_month = #{selectedMonth} vehicle_book_info vbf on vbf.vehicle = vbr.vehicle and vbf.year_month = #{selectedMonth}
where where
1=1 1=1
<if test="companyList != null and companyList.size() > 0">
and ( vbr.lift_company in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
#{companyId},
</foreach>
</trim>
)
or vbr.ret_company in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
#{companyId},
</foreach>
</trim>
)
)
</if>
<if test="liftCompany !=null"> <if test="liftCompany !=null">
and vbr.lift_company = #{liftCompany} and vbr.lift_company = #{liftCompany}
</if> </if>
......
...@@ -34,8 +34,19 @@ ...@@ -34,8 +34,19 @@
left join vehicle b on a.vehicle_id = b.id left join vehicle b on a.vehicle_id = b.id
left join branch_company c on a.branch_company_id = c.id left join branch_company c on a.branch_company_id = c.id
<trim prefix="where"> <trim prefix="where">
1=1
<if test="numberPlate != null and numberPlate != ''"> <if test="numberPlate != null and numberPlate != ''">
b.number_plate = #{numberPlate} and b.number_plate = #{numberPlate}
</if>
<if test="companyList != null and companyList.size() > 0">
and ( a.branch_company_id in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
#{companyId},
</foreach>
</trim>
)
)
</if> </if>
</trim> </trim>
order by a.create_time desc order by a.create_time desc
......
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