Controller层:
/**
* 多场地交件网点车辆重量计算——获取场地编码、称重过的场地编码、进站称重毛重
* @author yh
* @since 2019.07.22
* @return
*/
@RequestMapping(value="/getMultiSite")
public CIPResponseMsg getMultiSite(@RequestBody WB_busi_gross_weightVO vo){
CIPResponseMsg msg = new CIPResponseMsg();
try {
boolean xAuth = true;
// CIPAuthLock lock = CIPRuntime.authManager.getAuthLock("authObject");
// lock.setAuthValue("authAtribute", String.valueOf(vo.getAttribute()));
// xAuth = CIPRuntime.authManager.checkBehavior(C_ACTION_UPDATE_DATA, lock);
if(xAuth){
//Object[] keys = vo.getKeys();
List<Map<String, Object>> vo0 = dataService.getMultiSite(vo);
msg.errorCode = CIPErrorCode.CALL_SUCCESS.code;
msg.msg = CIPErrorCode.CALL_SUCCESS.name;
msg.data = vo0;
}
else{
msg.errorCode = CIPErrorCode.ERROR_INVALID_AUTHORIZATION.code;
msg.msg = CIPErrorCode.ERROR_INVALID_AUTHORIZATION.name;
}
} catch (CIPServiceException e) {
CIPErrorCode error = e.getErrorCode();
msg.errorCode = error.code;
msg.msg = error.name;
} catch (CIPDaoException e) {
CIPErrorCode error = e.getErrorCode();
msg.errorCode = error.code;
msg.msg = error.name;
} catch (CIPRuntimeException e) {
CIPErrorCode error = e.getErrorCode();
msg.errorCode = error.code;
msg.msg = error.name;
}
return msg;
}
Service、:
/**
* 多场地交件——返回 场地编码、称重过的场地编码、进站称重毛重
*
*/
public List<Map<String, Object>> getMultiSite(WB_busi_gross_weightVO vo);
ServiceImpl层:
/**
* 多场地交件网点车辆重量计算
*/
@Override
public List<Map<String, Object>> getMultiSite(WB_busi_gross_weightVO vo) {
List<Map<String, Object>> map = dataDao.getMultiSite(vo);
if(map.isEmpty())
throw new CIPServiceException(CIPErrorCode.ERROR_RECORD_NOT_EXISTS);
return map;
}
Dao层
/**
* 多场地交件网点车辆重量计算
*/
public List<Map<String, Object>> getMultiSite(WB_busi_gross_weightVO vo);
DaoImpl:
/**
* 多场地交件网点车辆重量计算
*/
@Override
public List<Map<String, Object>> getMultiSite(WB_busi_gross_weightVO vo) {
List<Map<String, Object>> map = null;
Object[] params = new Object[3];
params[0] = vo.getTrans_doc_id();
params[1] = vo.getTrans_doc_id();
params[2] = vo.getPlc_cd();
/*//发车凭证号号为 30009999999 的不做处理
if(vo.getTrans_doc_id().equals("30009999999")){
throw new CIPServiceException(CIPErrorCode.ERROR_DATA_IS_MALFORM);
}*/
String sql = "select (select group_concat(s.plc_cd) from (select DISTINCT t.plc_cd ,t.trans_doc_id from wb_busi_gross_weight t where t.trans_doc_id = ?) s GROUP BY s.trans_doc_id) plc_cd,max(a.gross_weight) gross_weight,concat(b.dest_site_plc_cd,if(b.dest_site_plc_cd2,concat(',',b.dest_site_plc_cd2),'')) dest_site_plc_cd_n from wb_busi_gross_weight a "
+ " LEFT JOIN jh_shipment b on a.trans_doc_id = b.ship_id "
+ " where a.trans_doc_id = ? and a.plc_cd = ? and a.in_out_flag = 2 and b.vchr_stat = 1 ";
try{
map = jdbcTemplate.queryForList(sql,params);
if(map.isEmpty()){
throw new CIPServiceException(CIPErrorCode.ERROR_RECORD_NOT_EXISTS);
}else{
return map;
}
}catch(Exception e){
log.error(e);
return map;
}
}
postman测试:
接口联调测试文档: