Commit eb883ef5 authored by huangcb's avatar huangcb

新增接口:司机默认车辆

parent b4dd0a13
...@@ -278,6 +278,9 @@ public class ErrorMessageComponent { ...@@ -278,6 +278,9 @@ public class ErrorMessageComponent {
@Value("${error-message.carrier.driver.vehicle-check-bind.1003}") @Value("${error-message.carrier.driver.vehicle-check-bind.1003}")
private String carrierDriverVehicleCheckBind1003; private String carrierDriverVehicleCheckBind1003;
@Value("${error-message.carrier.driver.vehicle-set-default.1001}")
private String carrierDriverVehicleSetDefault1001;
@Value("${error-message.contract.offline.goods-owner.add.1001}") @Value("${error-message.contract.offline.goods-owner.add.1001}")
private String contractOfflineGoodsOwnerAdd1001; private String contractOfflineGoodsOwnerAdd1001;
@Value("${error-message.contract.offline.goods-owner.add.1002}") @Value("${error-message.contract.offline.goods-owner.add.1002}")
......
...@@ -37,7 +37,6 @@ public class AuthFilter implements Filter { ...@@ -37,7 +37,6 @@ public class AuthFilter implements Filter {
// } else { // } else {
// // 解析并校验Token // // 解析并校验Token
// } // }
filterChain.doFilter(servletRequest, servletResponse); filterChain.doFilter(servletRequest, servletResponse);
} }
......
...@@ -142,4 +142,17 @@ public class DriverVehicleController { ...@@ -142,4 +142,17 @@ public class DriverVehicleController {
public EResponse query(@RequestBody DriverVehicleQueryForm form) throws EException { public EResponse query(@RequestBody DriverVehicleQueryForm form) throws EException {
return EResponse.ok(driverVehicleService.getDriverVehicle4Params(form)); return EResponse.ok(driverVehicleService.getDriverVehicle4Params(form));
} }
/**
* description 司机默认车辆
* param [form]
* return com.esv.freight.customer.common.response.EResponse
* author HuangChaobin
* createTime 2020/06/19 10:31
**/
@PostMapping("/setDefault")
public EResponse setDefault(@RequestBody @Validated(ValidatorBind.class) DriverVehicleForm form) throws EException {
driverVehicleService.driverDefaultVehicle(form);
return EResponse.ok();
}
} }
...@@ -105,4 +105,13 @@ public interface DriverVehicleService { ...@@ -105,4 +105,13 @@ public interface DriverVehicleService {
**/ **/
PageResultVO getDriverVehicle4Params(DriverVehicleQueryForm form); PageResultVO getDriverVehicle4Params(DriverVehicleQueryForm form);
/**
* description 司机设置默认车辆
* param [form]
* return java.lang.Integer
* author HuangChaobin
* createTime 2020/06/19 10:11
**/
void driverDefaultVehicle(DriverVehicleForm form);
} }
package com.esv.freight.customer.module.driver.service.impl; package com.esv.freight.customer.module.driver.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...@@ -328,4 +329,38 @@ public class DriverVehicleServiceImpl implements DriverVehicleService { ...@@ -328,4 +329,38 @@ public class DriverVehicleServiceImpl implements DriverVehicleService {
return new PageResultVO(page, targetRecordList); return new PageResultVO(page, targetRecordList);
} }
@Override
public void driverDefaultVehicle(DriverVehicleForm form) {
// 1:校验司机与车辆是否绑定
VehicleDriverEntity vehicleDriverEntity = this.vehicleDriverService.getBaseMapper().selectOne(new LambdaQueryWrapper<VehicleDriverEntity>()
.eq(VehicleDriverEntity::getDriverId, form.getDriverId())
.eq(VehicleDriverEntity::getVehicleId, form.getVehicleId()));
if (null == vehicleDriverEntity) {
throw new EException(1001, errorMessageComponent.getCarrierDriverVehicleSetDefault1001());
}
// 2:判断是否已默认:0-不是、1-是
if (vehicleDriverEntity.getSelected()) {
return;
}
// 3:设置司机所有绑定车辆为非默认
VehicleDriverEntity updateEntity = new VehicleDriverEntity();
updateEntity.setSelected(false);
this.vehicleDriverService.getBaseMapper().update(updateEntity,
new LambdaQueryWrapper<VehicleDriverEntity>()
.eq(VehicleDriverEntity::getDriverId, form.getDriverId()));
// 4:设置司机绑定车辆为默认
updateEntity = new VehicleDriverEntity();
updateEntity.setSelected(true);
this.vehicleDriverService.getBaseMapper().update(updateEntity,
new LambdaQueryWrapper<VehicleDriverEntity>()
.eq(VehicleDriverEntity::getDriverId, form.getDriverId())
.eq(VehicleDriverEntity::getVehicleId, form.getVehicleId()));
}
} }
...@@ -238,6 +238,8 @@ error-message: ...@@ -238,6 +238,8 @@ error-message:
1001: 司机与车辆未绑定 1001: 司机与车辆未绑定
1002: 无效的司机ID 1002: 无效的司机ID
1003: 无效的车辆ID 1003: 无效的车辆ID
vehicle-set-default:
1001: 司机与车辆未绑定
score: score:
overall: overall:
update: update:
......
...@@ -238,6 +238,8 @@ error-message: ...@@ -238,6 +238,8 @@ error-message:
1001: 司机与车辆未绑定 1001: 司机与车辆未绑定
1002: 无效的司机ID 1002: 无效的司机ID
1003: 无效的车辆ID 1003: 无效的车辆ID
vehicle-set-default:
1001: 司机与车辆未绑定
score: score:
overall: overall:
update: update:
......
...@@ -56,7 +56,7 @@ public class BaseTestController { ...@@ -56,7 +56,7 @@ public class BaseTestController {
httpHeaders.add("gateway_traceid", String.valueOf(System.currentTimeMillis())); httpHeaders.add("gateway_traceid", String.valueOf(System.currentTimeMillis()));
httpHeaders.add("esv_system", "cc"); httpHeaders.add("esv_system", "cc");
httpHeaders.add("esv_data_perm", "1"); httpHeaders.add("esv_data_perm", "1");
httpHeaders.add("esv_tenant", "1"); httpHeaders.add("esv_tenant", "2");
httpHeaders.add("esv_department", "1"); httpHeaders.add("esv_department", "1");
httpHeaders.add("esv_department_children", "1,2,3"); httpHeaders.add("esv_department_children", "1,2,3");
httpHeaders.add("esv_user", "1"); httpHeaders.add("esv_user", "1");
......
package com.esv.freight.customer.common.util;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.Base64;
import java.util.Hashtable;
/**
* @description:
* @project: freight-customer-service
* @name: com.esv.freight.customer.common.util.LdapUtilsTest
* @author: 黄朝斌
* @email: huangchaobin@esvtek.com
* @createTime: 2020/06/17 17:50
* @version:1.0
*/
@SpringBootTest
@Slf4j
public class LdapUtilsTest {
@Test
public void ldap_login_test() {
String pwd = "12342234";
log.info(pwd);
String pwdBase64 = Base64.getEncoder().encodeToString(pwd.getBytes());
log.info(pwdBase64);
pwd = new String(Base64.getDecoder().decode(pwdBase64));
log.info(pwd);
try {
String bindUserDN = "cn=huangcb,cn=esvsy,dc=esvtek,dc=com"; // 用户 DN
String bindPassword = "12342234"; // 用户密码
String url = "ldap://192.168.31.249:389/"; // ldap服务器IP
Hashtable<String, String> env = new Hashtable<>();
env.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(javax.naming.Context.PROVIDER_URL, url);
env.put(javax.naming.Context.SECURITY_AUTHENTICATION, "simple");
env.put(javax.naming.Context.SECURITY_PRINCIPAL, bindUserDN);
env.put(javax.naming.Context.SECURITY_CREDENTIALS, bindPassword);
javax.naming.directory.DirContext ctx = new javax.naming.directory.InitialDirContext(env);
System.out.println("身份验证成功!");
} catch (Exception e) {
System.out.println("身份验证失败!");
e.printStackTrace();
}
}
}
...@@ -509,4 +509,58 @@ public class DriverVehicleControllerTest extends BaseTestController { ...@@ -509,4 +509,58 @@ public class DriverVehicleControllerTest extends BaseTestController {
Assert.assertEquals(ECode.SUCCESS.code(), result.getIntValue("code")); Assert.assertEquals(ECode.SUCCESS.code(), result.getIntValue("code"));
Assert.assertTrue(null != result.getJSONObject("data")); Assert.assertTrue(null != result.getJSONObject("data"));
} }
/**
* 司机默认车辆
**/
@Test
public void i1_setDefault_success_test() throws Exception {
String url = "/carrier/driver/vehicle/setDefault";
// 构造数据
DriverVehicleForm form = new DriverVehicleForm();
form.setDriverId(99999L);
form.setVehicleId(99999L);
MvcResult mvcResult = this.getMockMvc().perform(MockMvcRequestBuilders.post(url)
.contentType(MediaType.APPLICATION_JSON_UTF8_VALUE)
.headers(this.getDefaultHttpHeaders())
.content(form.toString()))
.andDo(MockMvcResultHandlers.print())
.andExpect(MockMvcResultMatchers.status().isOk())
.andReturn();
String responseStr = mvcResult.getResponse().getContentAsString();
log.info(responseStr);
JSONObject result = JSONObject.parseObject(responseStr);
Assert.assertEquals(ECode.SUCCESS.code(), result.getIntValue("code"));
}
/**
* 司机默认车辆:司机与车辆未绑定
**/
@Test
public void i2_setDefault_unbind_failure_test() throws Exception {
String url = "/carrier/driver/vehicle/setDefault";
// 构造数据
DriverVehicleForm form = new DriverVehicleForm();
form.setDriverId(99999L);
form.setVehicleId(123456L);
MvcResult mvcResult = this.getMockMvc().perform(MockMvcRequestBuilders.post(url)
.contentType(MediaType.APPLICATION_JSON_UTF8_VALUE)
.headers(this.getDefaultHttpHeaders())
.content(form.toString()))
.andDo(MockMvcResultHandlers.print())
.andExpect(MockMvcResultMatchers.status().isOk())
.andReturn();
String responseStr = mvcResult.getResponse().getContentAsString();
log.info(responseStr);
JSONObject result = JSONObject.parseObject(responseStr);
Assert.assertEquals(1001, result.getIntValue("code"));
}
} }
...@@ -394,7 +394,7 @@ public class DeliveryAddressControllerTest extends BaseTestController { ...@@ -394,7 +394,7 @@ public class DeliveryAddressControllerTest extends BaseTestController {
// 构造数据 // 构造数据
DeliveryAddressForm form = new DeliveryAddressForm(); DeliveryAddressForm form = new DeliveryAddressForm();
form.setOwnerId(1L); form.setOwnerId(21L);
MvcResult mvcResult = this.getMockMvc().perform(MockMvcRequestBuilders.post(url) MvcResult mvcResult = this.getMockMvc().perform(MockMvcRequestBuilders.post(url)
.contentType(MediaType.APPLICATION_JSON_UTF8_VALUE) .contentType(MediaType.APPLICATION_JSON_UTF8_VALUE)
......
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