|
|
@ -46,7 +46,7 @@ public class MenuController extends BaseController { |
|
|
|
@RequestMapping(method = RequestMethod.PUT) |
|
|
|
public List<Long> add(@RequestParam String name, @RequestParam(required = false) List<Long> vendors, @RequestParam Long nutrient, @RequestParam List<Long> day, @RequestParam List<String> meals, @RequestParam List<Integer> month, @RequestParam List<String> crows) { |
|
|
|
Assert.isTrue(StringUtils.isNotBlank(name), "[参数错误]食谱名称必填!"); |
|
|
|
Assert.isTrue(!name.matches("[\\[\\]:?*/\\\\]") && name.length() < 31, "[参数错误]食谱名称小于31个字符,且不能包含特殊字符!"); |
|
|
|
Assert.isTrue(!name.matches("[\\[\\]:?*/\\\\]") && name.length() < 31, "[参数错误]食谱名称小于30个字符,且不能包含特殊字符!"); |
|
|
|
Assert.isTrue(CollectionUtils.isNotEmpty(day) && Range.closed(1L, 7L).containsAll(day), "[参数错误]星期取值[周一~周日]!"); |
|
|
|
Assert.isTrue(CollectionUtils.isNotEmpty(month) && Range.closed(1, 12).containsAll(month), "[参数错误]请选择正确的月份!"); |
|
|
|
Assert.isTrue(CollectionUtils.isNotEmpty(meals), "[参数错误]餐次必填!"); |
|
|
@ -142,4 +142,25 @@ public class MenuController extends BaseController { |
|
|
|
} |
|
|
|
return menuService.list(isAdmin() ? vender : getVender(), name, MenuStatus.toType(status), parseDate(startTime), parseDate(endTime), PageRequest.of(pageNo, pageSize).withSort(Sort.by(Sort.Direction.DESC, "id"))); |
|
|
|
} |
|
|
|
|
|
|
|
@ResponseBody |
|
|
|
@RequestMapping(path = "copy", method = RequestMethod.PUT) |
|
|
|
public List<Long> copy(@RequestParam Long id, @RequestParam(required = false) String name, @RequestParam(required = false) List<Long> vendors) { |
|
|
|
Menu menu = isAdmin() ? menuService.get(id) : menuService.get(id, getVender()); |
|
|
|
Assert.notNull(menu, "[参数错误]食谱不存在, 复制失败!"); |
|
|
|
name = StringUtils.isBlank(name) ? "复制-" + menu.getName() : name; |
|
|
|
Assert.isTrue(!name.matches("[\\[\\]:?*/\\\\]") && name.length() < 31, "[参数错误]食谱名称小于30个字符,且不能包含特殊字符!"); |
|
|
|
|
|
|
|
if(isAdmin()) { |
|
|
|
vendors = vendors == null ? Lists.newArrayList() : vendors.stream().filter(venderService::exists).collect(Collectors.toList()); |
|
|
|
} else { |
|
|
|
vendors = Lists.newArrayList(getVender()); |
|
|
|
} |
|
|
|
|
|
|
|
Nutrition nutrition = nutritionService.get(menu.getNutrient()); |
|
|
|
Assert.notNull(nutrition, "[参数错误]营养计划已经不存在,请重新编辑食谱后再复制!"); |
|
|
|
Assert.isTrue(CollectionUtils.isNotEmpty(vendors) && new HashSet<>(nutrition.getVendors()).containsAll(vendors), "[参数错误]营养计划不适用于所选单位!"); |
|
|
|
|
|
|
|
return menuService.copy(menu, name, vendors, getUid()); |
|
|
|
} |
|
|
|
} |