|
|
@@ -120,9 +120,35 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
|
camera.setWifiPassword(CameraConstant.WIFI_PASSWORD_VALUE);
|
|
|
camera.setChildPassword(CameraConstant.CHILD_PASSWORD_VALUE);
|
|
|
camera.setActivatedTime(DateUtil.date2String(new Date(),DateUtil.DEFAULT_DATE_FORMAT));
|
|
|
+ camera.setIsOut(0);
|
|
|
cameraList.add(camera);
|
|
|
+
|
|
|
+ }
|
|
|
+ this.saveBatch(cameraList);
|
|
|
+
|
|
|
+ List<CameraDetail> cameraDetailList = new ArrayList<>();
|
|
|
+ for (Camera camera : cameraList) {
|
|
|
+ String wifiName = camera.getWifiName();
|
|
|
+ Integer type = CameraTypeEnum.getTypeByWifiNamePrefix(wifiName.substring(0,wifiName.lastIndexOf("_") +1));
|
|
|
+ CameraDetail cameraDetail = new CameraDetail();
|
|
|
+ cameraDetail.setAgency(CameraConstant.DEFAULT_AGENT);
|
|
|
+ cameraDetail.setCameraId(camera.getId());
|
|
|
+ cameraDetail.setCountry(0);//默认中国
|
|
|
+ if("aws".equals(ossType)){
|
|
|
+ cameraDetail.setCountry(1);//1-国外
|
|
|
+ }
|
|
|
+ cameraDetail.setType(type);
|
|
|
+ if (1 == cameraDetail.getType() || 9 == cameraDetail.getType() || 10 == cameraDetail.getType()){
|
|
|
+ cameraDetail.setTotalSpace(Long.valueOf(Constant.CAMERA_BASE_SPACE_VALUE));
|
|
|
+ cameraDetail.setUsedSpace(0L);
|
|
|
+ }
|
|
|
+ if(type != 9 && type != 10){
|
|
|
+ type = type == 0 ? 1: 4;
|
|
|
+ }
|
|
|
+ cameraDetail.setGoodsId(Long.valueOf(type));
|
|
|
+ cameraDetailList.add(cameraDetail);
|
|
|
}
|
|
|
- return this.saveBatch(cameraList) ? cameraList.size() : 0;
|
|
|
+ return cameraDetailService.saveBatch(cameraDetailList) ? cameraList.size() : 0;
|
|
|
|
|
|
}
|
|
|
@Override
|
|
|
@@ -188,48 +214,31 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
|
throw new BusinessException(-1,"相机不存在");
|
|
|
}
|
|
|
CameraDetail detail = cameraDetailService.getByCameraId(camera.getId());
|
|
|
- if(detail !=null){
|
|
|
- throw new BusinessException(-1,"该相机已出库");
|
|
|
+ if(detail ==null){
|
|
|
+ throw new BusinessException(-1,"该相机未入库");
|
|
|
}
|
|
|
- HashMap<String,Camera> hashMap = new HashMap<>();
|
|
|
- hashMap.put(param.getSnCode(),camera);
|
|
|
- this.saveBatchDetail(hashMap, Collections.singletonList(param));
|
|
|
+
|
|
|
+ HashMap<String,CameraDetail> detailMap = new HashMap<>();
|
|
|
+ detailMap.put(detail.getCameraId().toString(),detail);
|
|
|
+ this.saveBatchDetail(detailMap, Collections.singletonList(param));
|
|
|
|
|
|
}
|
|
|
@Override
|
|
|
public Integer outs(List<CameraInOutParam> params){
|
|
|
setCompanyIdByDb(params);
|
|
|
- HashMap<String, Object> resultMap = getResultMap(params,1);
|
|
|
- HashMap<String,Camera> snCodeMap = (HashMap<String, Camera>) resultMap.get("snCodeMap");
|
|
|
- return this.saveBatchDetail(snCodeMap,params);
|
|
|
+ HashMap<String, Object> resultMap = getResultMap(params);
|
|
|
+ HashMap<String,CameraDetail> detailMap = (HashMap<String, CameraDetail>) resultMap.get("detailMap");
|
|
|
+ return this.saveBatchDetail(detailMap,params);
|
|
|
|
|
|
}
|
|
|
|
|
|
- private Integer saveBatchDetail(HashMap<String,Camera> snCodeMap, List<CameraInOutParam> params){
|
|
|
+ private Integer saveBatchDetail(HashMap<String, CameraDetail> detailMap, List<CameraInOutParam> params){
|
|
|
List<CameraDetail> cameraDetails = new ArrayList<>();
|
|
|
for (CameraInOutParam param : params) {
|
|
|
- Camera camera = snCodeMap.get(param.getSnCode());
|
|
|
- String wifiName = camera.getWifiName();
|
|
|
- Integer type = CameraTypeEnum.getTypeByWifiNamePrefix(wifiName.substring(0,wifiName.lastIndexOf("_") +1));
|
|
|
- CameraDetail cameraDetail = new CameraDetail();
|
|
|
+ CameraDetail cameraDetail = detailMap.get(param.getId().toString());
|
|
|
cameraDetail.setOrderSn(param.getOrderSn());
|
|
|
cameraDetail.setOwn(param.getOutType());
|
|
|
cameraDetail.setCompanyId(param.getCompanyId());
|
|
|
- cameraDetail.setAgency(CameraConstant.DEFAULT_AGENT);
|
|
|
- cameraDetail.setCameraId(camera.getId());
|
|
|
- cameraDetail.setCountry(0);//默认中国
|
|
|
- if("aws".equals(ossType)){
|
|
|
- cameraDetail.setCountry(1);//1-国外
|
|
|
- }
|
|
|
- cameraDetail.setType(type);
|
|
|
- if (1 == cameraDetail.getType() || 9 == cameraDetail.getType() || 10 == cameraDetail.getType()){
|
|
|
- cameraDetail.setTotalSpace(Long.valueOf(Constant.CAMERA_BASE_SPACE_VALUE));
|
|
|
- cameraDetail.setUsedSpace(0L);
|
|
|
- }
|
|
|
- if(type != 9 && type != 10){
|
|
|
- type = type == 0 ? 1: 4;
|
|
|
- }
|
|
|
- cameraDetail.setGoodsId(Long.valueOf(type));
|
|
|
cameraDetails.add(cameraDetail);
|
|
|
}
|
|
|
return cameraDetailService.saveBatch(cameraDetails) ? cameraDetails.size() : 0;
|
|
|
@@ -293,7 +302,7 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
|
@Override
|
|
|
public Integer updateCompany(List<CameraInOutParam> companyParams) {
|
|
|
setCompanyIdByDb(companyParams);
|
|
|
- HashMap<String, Object> resultMap = getResultMap(companyParams,2);
|
|
|
+ HashMap<String, Object> resultMap = getResultMap(companyParams);
|
|
|
HashMap<Long, CameraDetail> detailMap = (HashMap<Long, CameraDetail>) resultMap.get("detailMap");
|
|
|
HashMap<String, Camera> snCodeMap = (HashMap<String, Camera>) resultMap.get("snCodeMap");
|
|
|
List<CameraDetail> updateDetailList = new ArrayList<>();
|
|
|
@@ -322,7 +331,7 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private HashMap<String, Object> getResultMap(List<CameraInOutParam> params, Integer type){
|
|
|
+ private HashMap<String, Object> getResultMap(List<CameraInOutParam> params){
|
|
|
HashMap<String,Object> resultMap = new HashMap<>();
|
|
|
List<String> snCodeList = params.parallelStream().map(CameraInOutParam::getSnCode).collect(Collectors.toList());
|
|
|
checkSnCode(snCodeList);
|
|
|
@@ -343,10 +352,7 @@ public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implem
|
|
|
List<Integer> errorList = new ArrayList<>();
|
|
|
for (String snCode : snCodeList) {
|
|
|
Camera camera = snCodeMap.get(snCode);
|
|
|
- if(type == 1 && (camera == null || detailMap.get(camera.getId()) !=null)){
|
|
|
- errorList.add(snCodeList.indexOf(snCode) +3);
|
|
|
- }
|
|
|
- if(type == 2 && (camera == null || detailMap.get(camera.getId()) == null)){
|
|
|
+ if(camera == null || detailMap.get(camera.getId()) !=null){
|
|
|
errorList.add(snCodeList.indexOf(snCode) +3);
|
|
|
}
|
|
|
}
|