rev:优化物料查询。
This commit is contained in:
@@ -22,10 +22,10 @@ import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* 海亮缓存线手持服务
|
||||
* 返回数据CommonResult,code,desc,result是因为原有对接文档给前端返回格式,要求保留,所以就包了一层。
|
||||
*
|
||||
* @author gbx
|
||||
* @since 2023/3/22
|
||||
@@ -39,36 +39,47 @@ import java.util.Map;
|
||||
public class CacheLineHandController{
|
||||
private final CacheLineHandService cacheLineHandService;
|
||||
|
||||
@PostMapping("/materialQuery")
|
||||
@PostMapping("/queryMaterial")
|
||||
@Log("物料查询")
|
||||
@ApiOperation("物料查询")
|
||||
public ResponseEntity<List<MaterialDto>> queryMaterial(@RequestBody JSONObject form) {
|
||||
log.info("海亮缓存线手持服务 [查询物料] 接口被请求, 请求参数-{}", form);
|
||||
String params = form.getString("search_bar");
|
||||
if(StringUtils.isNotEmpty(params)) {
|
||||
//限制查询参数过短,模糊力度大
|
||||
int length = params.getBytes().length;
|
||||
if(length < 4) {
|
||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
||||
}
|
||||
}
|
||||
//checkLength(params);
|
||||
return new ResponseEntity<>(cacheLineHandService.queryMaterial(params), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/queryMaterial")
|
||||
@PostMapping("/materialQuery")
|
||||
@Log("物料模糊查询")
|
||||
@ApiOperation("物料模糊查询")
|
||||
public ResponseEntity<JSONArray> materialQuery(@RequestBody JSONObject form) {
|
||||
log.info("海亮缓存线手持服务 [查询物料] 接口被请求, 请求参数-{}", form);
|
||||
String params = form.getString("search_bar");
|
||||
//checkLength(params);
|
||||
return new ResponseEntity<>(cacheLineHandService.materialQuery(form.getString("search_bar")), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 输入搜索条件校验,限制查询参数过短,模糊力度大
|
||||
*/
|
||||
private void checkLength(String params) {
|
||||
if(StringUtils.isNotEmpty(params)) {
|
||||
//限制查询参数过短,模糊力度大
|
||||
int length = params.getBytes().length;
|
||||
if(length < 4) {
|
||||
//限制查询参数过短,模糊力度大
|
||||
if(Pattern.compile("[0-9a-zA-Z]+").matcher(params).matches() || Pattern.compile("\\d+").matcher(params).matches()) {
|
||||
if(length < 5) {
|
||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于4个字的查询条件。");
|
||||
}
|
||||
}
|
||||
else if(Pattern.compile("[\u4e00-\u9fa5]+").matcher(params).matches()) {
|
||||
if(length < 9) {
|
||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
||||
}
|
||||
}
|
||||
else if(length < 4) {
|
||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
||||
}
|
||||
}
|
||||
return new ResponseEntity<>(cacheLineHandService.materialQuery(form.getString("search_bar")), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/semiMaterialSpecQuery")
|
||||
|
||||
@@ -679,6 +679,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
||||
//2.绑定新料箱条码(入满箱或者入空箱),设置缓存线点位不为空
|
||||
vehiobj.put("vehicle_code", vehicle_code);
|
||||
vehiobj.put("is_empty", "0");
|
||||
//非雪花算法生产的ID为主键数据更新下需要拼接条件
|
||||
positionTab.update(vehiobj, "position_code = '" + position_code + "'");
|
||||
//3.删除入料箱之前的所有关联信息,包括物料,工序,生产区域
|
||||
ivtTab.delete("vehicle_code = '" + vehicle_code + "'");
|
||||
|
||||
@@ -154,9 +154,8 @@
|
||||
OR mb.material_code LIKE CONCAT ('%', 输入.condition, '%')
|
||||
OR mb.material_spec LIKE CONCAT ('%', 输入.condition, '%')
|
||||
OR class.class_name LIKE CONCAT ('%', 输入.condition, '%')
|
||||
ORDER BY
|
||||
mb.material_id desc
|
||||
ENDOPTION
|
||||
ORDER BY mb.material_id desc limit 1000
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
Reference in New Issue
Block a user