From 4252e44e40bdead90382ab50c2a7a4d9088d63c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E5=8D=8E=E8=A7=9E?= <2840315406@qq.com> Date: Tue, 22 Jul 2025 10:59:04 +0800 Subject: [PATCH] =?UTF-8?q?web=E7=AB=AF=E5=9B=BE=E7=89=87=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=A0=BC=E5=BC=8F=E4=BF=AE=E8=AE=A2=E4=B8=BA=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E6=95=B0=E7=BB=84,=E4=B8=8E=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=85=B1=E7=94=A8wxXXX=E5=AD=97=E6=AE=B5,=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E5=AD=97=E6=AE=B5=E4=B8=BAuid=E4=B8=8Eurl?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fdsafe/common/AreaController.java | 84 +++++++++++++++++++ .../fdsafe/web/edu/SupplierController.java | 21 +++++ .../web/school/AccompanyMealController.java | 13 +++ .../fdsafe/web/school/CattenController.java | 25 +++++- .../web/school/FoodSampleController.java | 13 +++ .../MorningInspectionDetailController.java | 13 +++ .../web/school/RubbishDealController.java | 13 +++ .../web/school/SchoolStaffController.java | 22 +++-- .../SelfInspectionRecordController.java | 23 +++++ .../supplier/SupplierDeliveryController.java | 8 ++ .../service/impl/SupplierServiceImpl.java | 2 + .../fdsafe/utils/ArrayStringUtils.java | 59 +++++++++++++ .../zf/foodpurchase/fdsafe/vo/CattenVO.java | 4 +- .../foodpurchase/fdsafe/vo/FoodSampleVO.java | 2 +- .../zf/foodpurchase/fdsafe/vo/ImageVO.java | 15 ++++ .../zf/foodpurchase/fdsafe/vo/SupplierVO.java | 4 + .../com/zf/foodpurchase/fdsafe/vo/WxImg.java | 2 + 17 files changed, 310 insertions(+), 13 deletions(-) create mode 100644 fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/common/AreaController.java create mode 100644 fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/ImageVO.java diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/common/AreaController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/common/AreaController.java new file mode 100644 index 0000000..93add62 --- /dev/null +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/common/AreaController.java @@ -0,0 +1,84 @@ +package com.zf.foodpurchase.fdsafe.common; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zf.foodpurchase.common.core.domain.AjaxResult; +import com.zf.foodpurchase.common.core.redis.RedisCache; +import com.zf.foodpurchase.common.utils.StringUtils; +import com.zf.foodpurchase.wx.entity.Area; +import com.zf.foodpurchase.wx.service.IAreaService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + *

+ * 全国省市县三级行政区域信息表 前端控制器 + *

+ * + * @author lilj + * @since 2024-11-14 + */ +@Api(tags = "三级区划查询") +@RestController +@RequestMapping("/wx/area") +public class AreaController { + @Autowired + private IAreaService areaService; + + @Autowired + private RedisCache redisCache; + + /** + * 查询所有区划数据 + * + * @return + */ + @ApiOperation("查询所有区划数据") + @GetMapping("listAll") + public AjaxResult listAll() { + List provinceList = areaService.queryAllArea(); + return AjaxResult.success("查询成功", provinceList); + } + + + @ApiOperation("查询省/市/县级区划") + @GetMapping("queryByLevel") + public AjaxResult queryByLevel(Integer level) { + if (level == null) { + return AjaxResult.error("level不能为空"); + } + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(Area::getLevel, level); + return AjaxResult.success("查询成功", areaService.list(queryWrapper)); + } + + @ApiOperation("根据区划编码查询区划信息") + @GetMapping("getArea") + public AjaxResult getArea(String areaCode) { + if (StringUtils.isBlank(areaCode)) { + return AjaxResult.error("areaCode不能为空"); + } + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(Area::getAreaCode, areaCode); + Area area = areaService.getOne(queryWrapper); + return AjaxResult.success("查询成功", area); + } + + @ApiOperation("根据区划编码查询本级以及上下级区划信息") + @GetMapping("getAreaDetail") + public AjaxResult getAreaDetail(String areaCode) { + if (StringUtils.isBlank(areaCode)) { + return AjaxResult.error("areaCode不能为空"); + } + Area area = areaService.getAreaDetail(areaCode); + + return AjaxResult.success("查询成功", area); + } + +} diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/edu/SupplierController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/edu/SupplierController.java index 5ac1ae8..c39746a 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/edu/SupplierController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/edu/SupplierController.java @@ -6,10 +6,13 @@ import com.zf.foodpurchase.common.core.page.TableDataInfo; import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.ISupplierService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.SupplierVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.apache.ibatis.annotations.Update; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -36,12 +39,30 @@ public class SupplierController extends BaseController { @PostMapping("/add") public AjaxResult add(@RequestBody @Validated(AddGroup.class) SupplierVO supplierVO) { + // wxImage形式 + List images = supplierVO.getWxLicenseImg(); + if(!CollectionUtils.isEmpty( images)){ + supplierVO.setLicenseImg(ArrayStringUtils.wxImgToArray(images)); + } + images = supplierVO.getWxFoodLicenseImg(); + if(!CollectionUtils.isEmpty( images)){ + supplierVO.setFoodLicenseImg(ArrayStringUtils.wxImgToArray(images)); + } return supplierService.saveVO(supplierVO); } // 接口需要划分:上架,信息编辑. @PostMapping("/update") public AjaxResult update(@RequestBody @Validated(UpdateGroup.class) SupplierVO supplierVO) { + // wxImage形式 + List images = supplierVO.getWxLicenseImg(); + if(!CollectionUtils.isEmpty( images)){ + supplierVO.setLicenseImg(ArrayStringUtils.wxImgToArray(images)); + } + images = supplierVO.getWxFoodLicenseImg(); + if(!CollectionUtils.isEmpty( images)){ + supplierVO.setFoodLicenseImg(ArrayStringUtils.wxImgToArray(images)); + } return supplierService.updateVO(supplierVO); } diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/AccompanyMealController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/AccompanyMealController.java index e83211e..da12dbd 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/AccompanyMealController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/AccompanyMealController.java @@ -8,8 +8,11 @@ import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.entity.AccompanyMeal; import com.zf.foodpurchase.fdsafe.service.IAccompanyMealService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.AccompanyMealVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -40,11 +43,21 @@ public class AccompanyMealController extends BaseController { @RequestMapping("/add") public AjaxResult add(@RequestBody @Validated(AddGroup.class) AccompanyMealVO accompanyMealVO) { + // wxImage形式 + List imageList = accompanyMealVO.getWxAccompanyImage(); + if(!CollectionUtils.isEmpty(imageList)){ + accompanyMealVO.setAccompanyImage(ArrayStringUtils.wxImgToArray(accompanyMealVO.getWxAccompanyImage())); + } return accompanyMealService.saveVO(accompanyMealVO); } @RequestMapping("/update") public AjaxResult update(@RequestBody @Validated(UpdateGroup.class) AccompanyMealVO accompanyMealVO) { + // wxImage形式 + List imageList = accompanyMealVO.getWxAccompanyImage(); + if(!CollectionUtils.isEmpty(imageList)){ + accompanyMealVO.setAccompanyImage(ArrayStringUtils.wxImgToArray(accompanyMealVO.getWxAccompanyImage())); + } return accompanyMealService.updateVO(accompanyMealVO); } diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/CattenController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/CattenController.java index dc7870e..b40d024 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/CattenController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/CattenController.java @@ -7,8 +7,11 @@ import com.zf.foodpurchase.common.core.page.TableDataInfo; import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.ICattenService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.CattenVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -16,7 +19,7 @@ import java.util.List; /** *

- * 前端控制器 + * 前端控制器 *

* * @author lilj @@ -37,17 +40,35 @@ public class CattenController extends BaseController { @PostMapping("/add") public AjaxResult add(@Validated(AddGroup.class) @RequestBody CattenVO cattenVO) { + // wxImage形式 + List imageList = cattenVO.getWxLicenseImg(); + if(!CollectionUtils.isEmpty(imageList)){ + cattenVO.setLicenseImg(ArrayStringUtils.wxImgToArray(cattenVO.getWxLicenseImg())); + } + imageList = cattenVO.getWxFoodLicenseImg(); + if(!CollectionUtils.isEmpty(imageList)){ + cattenVO.setFoodLicenseImg(ArrayStringUtils.wxImgToArray(cattenVO.getWxFoodLicenseImg())); + } return cattenService.saveVO(cattenVO); } @PostMapping("/update") public AjaxResult update(@Validated(UpdateGroup.class) @RequestBody CattenVO cattenVO) { + // wxImage形式 + List imageList = cattenVO.getWxLicenseImg(); + if(!CollectionUtils.isEmpty(imageList)){ + cattenVO.setLicenseImg(ArrayStringUtils.wxImgToArray(cattenVO.getWxLicenseImg())); + } + imageList = cattenVO.getWxFoodLicenseImg(); + if(!CollectionUtils.isEmpty(imageList)){ + cattenVO.setFoodLicenseImg(ArrayStringUtils.wxImgToArray(cattenVO.getWxFoodLicenseImg())); + } return cattenService.updateVO(cattenVO); } @GetMapping("/delete") public AjaxResult delete(Integer cattenId) { - if(cattenId == null){ + if (cattenId == null) { return error("请选择要删除的食堂"); } return cattenService.removeById(cattenId) ? success("删除成功") : error("删除失败"); diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/FoodSampleController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/FoodSampleController.java index be4e095..816853a 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/FoodSampleController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/FoodSampleController.java @@ -7,8 +7,11 @@ import com.zf.foodpurchase.common.core.page.TableDataInfo; import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.IFoodSampleService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.FoodSampleVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -38,11 +41,21 @@ public class FoodSampleController extends BaseController { @PostMapping("/add") public AjaxResult add(@RequestBody @Validated(AddGroup.class) FoodSampleVO foodSampleVO) { + // wxImage形式 + List imageList = foodSampleVO.getWxSaveImage(); + if(!CollectionUtils.isEmpty(imageList)){ + foodSampleVO.setSaveImg(ArrayStringUtils.wxImgToArray(imageList)); + } return foodSampleService.saveVO(foodSampleVO); } @PostMapping("/update") public AjaxResult update(@RequestBody @Validated(UpdateGroup.class) FoodSampleVO foodSampleVO) { + // wxImage形式 + List imageList = foodSampleVO.getWxSaveImage(); + if(!CollectionUtils.isEmpty(imageList)){ + foodSampleVO.setSaveImg(ArrayStringUtils.wxImgToArray(imageList)); + } return foodSampleService.updateVO(foodSampleVO); } diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/MorningInspectionDetailController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/MorningInspectionDetailController.java index 31b2209..af5e9ce 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/MorningInspectionDetailController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/MorningInspectionDetailController.java @@ -11,10 +11,13 @@ import com.zf.foodpurchase.fdsafe.mapper.MorningCheckInMapper; import com.zf.foodpurchase.fdsafe.service.IMorningInspectionContentService; import com.zf.foodpurchase.fdsafe.service.IMorningInspectionDetailService; import com.zf.foodpurchase.fdsafe.service.impl.MorningInspectionContentServiceImpl; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.MorningInspectionDetailVO; import com.zf.foodpurchase.fdsafe.vo.MorningTableHeaderVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.apache.commons.math3.analysis.function.Add; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -75,11 +78,21 @@ public class MorningInspectionDetailController extends BaseController { @PostMapping("/add") public AjaxResult add(@RequestBody @Validated({AddGroup.class}) MorningInspectionDetailVO morningInspectionDetailVO){ + // wxImage形式 + List images = morningInspectionDetailVO.getWxAbnormalImg(); + if(!CollectionUtils.isEmpty( images)){ + morningInspectionDetailVO.setAbnormalImg(ArrayStringUtils.wxImgToArray(images)); + } return morningInspectionDetailService.saveVO(morningInspectionDetailVO); } @PostMapping("/update") public AjaxResult update(@RequestBody @Validated({UpdateGroup.class}) MorningInspectionDetailVO morningInspectionDetailVO){ + // wxImage形式 + List images = morningInspectionDetailVO.getWxAbnormalImg(); + if(!CollectionUtils.isEmpty( images)){ + morningInspectionDetailVO.setAbnormalImg(ArrayStringUtils.wxImgToArray(images)); + } return morningInspectionDetailService.updateVO(morningInspectionDetailVO); } diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/RubbishDealController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/RubbishDealController.java index ae8152f..dd0c09e 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/RubbishDealController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/RubbishDealController.java @@ -7,8 +7,11 @@ import com.zf.foodpurchase.common.core.page.TableDataInfo; import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.IRubbishDealService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.RubbishDealVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -38,11 +41,21 @@ public class RubbishDealController extends BaseController { @PostMapping("/add") public AjaxResult add(@Validated(AddGroup.class) @RequestBody RubbishDealVO rubbishDealVO) { + // wxImage形式 + List imageList = rubbishDealVO.getWxDealImg(); + if(!CollectionUtils.isEmpty(imageList)){ + rubbishDealVO.setDealImg(ArrayStringUtils.wxImgToArray(rubbishDealVO.getWxDealImg())); + } return rubbishDealService.saveVO(rubbishDealVO); } @PostMapping("/update") public AjaxResult update(@Validated(UpdateGroup.class) @RequestBody RubbishDealVO rubbishDealVO) { + // wxImage形式 + List imageList = rubbishDealVO.getWxDealImg(); + if(!CollectionUtils.isEmpty(imageList)){ + rubbishDealVO.setDealImg(ArrayStringUtils.wxImgToArray(rubbishDealVO.getWxDealImg())); + } return rubbishDealService.updateVO(rubbishDealVO); } diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SchoolStaffController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SchoolStaffController.java index af5e2ff..cacdb99 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SchoolStaffController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SchoolStaffController.java @@ -13,6 +13,7 @@ import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.ISchoolStaffService; import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.SchoolStaffVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; @@ -24,7 +25,7 @@ import java.util.List; /** *

- * 前端控制器 + * 前端控制器 *

* * @author lilj @@ -40,27 +41,32 @@ public class SchoolStaffController extends BaseController { public TableDataInfo pageList(SchoolStaffVO schoolStaffVO) { startPage(); List list = schoolStaffService.querySchoolStaffVO(schoolStaffVO); - if(!CollectionUtils.isEmpty(list)){ - list.forEach(item->{ - item.setHealthCertImg(ArrayStringUtils.stringToArray(item.getHealthCertImgStr())); - }); - } return getDataTable(list); } @PostMapping("/add") public AjaxResult add(@Validated(AddGroup.class) @RequestBody SchoolStaffVO schoolStaffVO) { + // wxImage形式 + List imageList = schoolStaffVO.getWxHealthCertImg(); + if(!CollectionUtils.isEmpty(imageList)){ + schoolStaffVO.setHealthCertImg(ArrayStringUtils.wxImgToArray(schoolStaffVO.getWxHealthCertImg())); + } return schoolStaffService.saveVO(schoolStaffVO); } @PostMapping("/update") public AjaxResult update(@Validated(UpdateGroup.class) @RequestBody SchoolStaffVO schoolStaffVO) { - return schoolStaffService.updateVO(schoolStaffVO); + // wxImage形式 + List imageList = schoolStaffVO.getWxHealthCertImg(); + if(!CollectionUtils.isEmpty(imageList)){ + schoolStaffVO.setHealthCertImg(ArrayStringUtils.wxImgToArray(schoolStaffVO.getWxHealthCertImg())); + } + return schoolStaffService.updateVO(schoolStaffVO); } @GetMapping("/delete") public AjaxResult delete(Integer staffId) { - if(staffId == null){ + if (staffId == null) { return error("请选择要删除的学校人员"); } boolean flag = schoolStaffService.removeById(staffId); diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SelfInspectionRecordController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SelfInspectionRecordController.java index 716fcef..077eb2a 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SelfInspectionRecordController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/school/SelfInspectionRecordController.java @@ -7,9 +7,12 @@ import com.zf.foodpurchase.common.core.page.TableDataInfo; import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.ISelfInspectionRecordService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.SelfInspectionDetailVO; import com.zf.foodpurchase.fdsafe.vo.SelfInspectionRecordVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -39,11 +42,31 @@ public class SelfInspectionRecordController extends BaseController { @PostMapping("/add") public AjaxResult add(@RequestBody @Validated(AddGroup.class) SelfInspectionRecordVO selfInspectionRecordVO) { + // wxImage形式 + List selfInspectionDetailVOList = selfInspectionRecordVO.getSelfInspectionDetailVOList(); + if(!CollectionUtils.isEmpty(selfInspectionDetailVOList)){ + for (SelfInspectionDetailVO selfInspectionDetailVO : selfInspectionDetailVOList) { + List images = selfInspectionDetailVO.getWxAbnormalImg(); + if(!CollectionUtils.isEmpty( images)){ + selfInspectionDetailVO.setAbnormalImg(ArrayStringUtils.wxImgToArray(images)); + } + } + } return selfInspectionRecordService.saveVO(selfInspectionRecordVO); } @PostMapping("/update") public AjaxResult update(@RequestBody @Validated(UpdateGroup.class) SelfInspectionRecordVO selfInspectionRecordVO) { + // wxImage形式 + List selfInspectionDetailVOList = selfInspectionRecordVO.getSelfInspectionDetailVOList(); + if(!CollectionUtils.isEmpty(selfInspectionDetailVOList)){ + for (SelfInspectionDetailVO selfInspectionDetailVO : selfInspectionDetailVOList) { + List images = selfInspectionDetailVO.getWxAbnormalImg(); + if(!CollectionUtils.isEmpty( images)){ + selfInspectionDetailVO.setAbnormalImg(ArrayStringUtils.wxImgToArray(images)); + } + } + } return selfInspectionRecordService.updateVO(selfInspectionRecordVO); } diff --git a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/supplier/SupplierDeliveryController.java b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/supplier/SupplierDeliveryController.java index 400d781..5b90250 100644 --- a/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/supplier/SupplierDeliveryController.java +++ b/fp-admin/src/main/java/com/zf/foodpurchase/fdsafe/web/supplier/SupplierDeliveryController.java @@ -8,10 +8,13 @@ import com.zf.foodpurchase.common.valigroud.AddGroup; import com.zf.foodpurchase.common.valigroud.UpdateGroup; import com.zf.foodpurchase.fdsafe.service.ISupplierDeliveryService; import com.zf.foodpurchase.fdsafe.service.ISupplierService; +import com.zf.foodpurchase.fdsafe.utils.ArrayStringUtils; import com.zf.foodpurchase.fdsafe.vo.SchoolDeliveryVO; import com.zf.foodpurchase.fdsafe.vo.SupplierDeliveryAddUpdateVO; import com.zf.foodpurchase.fdsafe.vo.SupplierDeliveryVO; +import com.zf.foodpurchase.fdsafe.vo.WxImg; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -49,6 +52,11 @@ public class SupplierDeliveryController extends BaseController { @PostMapping("/schoolSignDelivery") public AjaxResult schoolUpdateDelivery(@RequestBody @Validated(UpdateGroup.class) SchoolDeliveryVO schoolDeliveryVO){ + // wxImage形式 + List images = schoolDeliveryVO.getWxSignImage(); + if(!CollectionUtils.isEmpty( images)){ + schoolDeliveryVO.setSignImage(ArrayStringUtils.wxImgToArray(images)); + } return supplierDeliveryService.schoolUpdateDelivery(schoolDeliveryVO); } diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/service/impl/SupplierServiceImpl.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/service/impl/SupplierServiceImpl.java index 289de5b..7957d16 100644 --- a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/service/impl/SupplierServiceImpl.java +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/service/impl/SupplierServiceImpl.java @@ -39,6 +39,8 @@ public class SupplierServiceImpl extends ServiceImpl i list.forEach(item -> { item.setLicenseImg(ArrayStringUtils.stringToArray(item.getLicenseImgStr())); item.setFoodLicenseImg(ArrayStringUtils.stringToArray(item.getFoodLicenseImgStr())); + item.setWxLicenseImg(ArrayStringUtils.arrayToWxImgList(item.getLicenseImg())); + item.setWxFoodLicenseImg(ArrayStringUtils.arrayToWxImgList(item.getFoodLicenseImg())); String areaCodeStr = item.getAreaCodeStr(); if(StringUtils.isNotBlank(areaCodeStr)){ diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/utils/ArrayStringUtils.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/utils/ArrayStringUtils.java index 4bdfb13..aefb9fa 100644 --- a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/utils/ArrayStringUtils.java +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/utils/ArrayStringUtils.java @@ -5,7 +5,9 @@ package com.zf.foodpurchase.fdsafe.utils; * @date:2025/5/9 */ +import com.alibaba.fastjson2.JSONObject; import com.zf.foodpurchase.common.utils.StringUtils; +import com.zf.foodpurchase.fdsafe.vo.ImageVO; import com.zf.foodpurchase.fdsafe.vo.WxImg; import java.util.ArrayList; @@ -71,4 +73,61 @@ public class ArrayStringUtils { } return wxImgList; } + + /** + * 字符串转ImageVO数组 + * @param str + * @return + */ + public static List stringToImageVOArray(String str) { + List imageVOList = new ArrayList<>(); + if(StringUtils.isBlank(str)){ + return imageVOList; + } + + if(!str.contains(",")){ + ImageVO imageVO = new ImageVO(); + imageVO.setUrl(str); + imageVOList.add(imageVO); + return imageVOList; + } + String[] strArray = str.trim().split(","); + for (int i = 0; i < strArray.length; i++){ + ImageVO imageVO = new ImageVO(); + imageVO.setUrl(strArray[i].trim()); + imageVOList.add(imageVO); + } + return imageVOList; + } + + /** + * ImageVO数组转字符串 + * @param imageVOList + * @return + */ + public static String imageVOArrayToString(List imageVOList) { + if(imageVOList == null || imageVOList.size() == 0){ + return null; + } + StringBuilder sb = new StringBuilder(); + int size = imageVOList.size(); + for (int i = 0; i < size; i++) { + ImageVO imageVO = imageVOList.get(i); + if(imageVO != null && StringUtils.isNotBlank(imageVO.getUrl())){ + String url = imageVO.getUrl(); + sb.append(url.trim()); + if(i != size - 1){ + sb.append(","); + } + } + } + return sb.toString(); + } + + public static void main(String[] args) { + String urls = "http://1,http://2"; + List imageVOList = stringToImageVOArray(urls); + System.out.println(JSONObject.toJSONString(imageVOList)); + System.out.println(imageVOArrayToString(imageVOList)); + } } diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/CattenVO.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/CattenVO.java index 14f1f39..7e69aa6 100644 --- a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/CattenVO.java +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/CattenVO.java @@ -68,7 +68,7 @@ public class CattenVO extends CommonVO implements Serializable { /** * 营业执照 */ - @NotEmpty(message = "营业执照图片不能为空", groups = { AddGroup.class, UpdateGroup.class}) + // @NotEmpty(message = "营业执照图片不能为空", groups = { AddGroup.class, UpdateGroup.class}) private String[] licenseImg; private String licenseImgStr; // @NotEmpty(message = "营业执照图片不能为空", groups = { AddGroup.class, UpdateGroup.class, WxAddGroup.class, WxUpdateGroup.class}) @@ -77,7 +77,7 @@ public class CattenVO extends CommonVO implements Serializable { /** * 食品许可证 */ - @NotEmpty(message = "食品许可证图片不能为空", groups = { AddGroup.class, UpdateGroup.class}) + // @NotEmpty(message = "食品许可证图片不能为空", groups = { AddGroup.class, UpdateGroup.class}) private String[] foodLicenseImg; private String foodLicenseImgStr; // @NotEmpty(message = "食品许可证图片不能为空", groups = { AddGroup.class, UpdateGroup.class, WxAddGroup.class, WxUpdateGroup.class}) diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/FoodSampleVO.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/FoodSampleVO.java index bded7cd..c8c26b1 100644 --- a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/FoodSampleVO.java +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/FoodSampleVO.java @@ -71,7 +71,7 @@ public class FoodSampleVO extends CommonVO implements Serializable { /** * 留样照片 */ - @NotEmpty(message = "留样照片不能为空", groups = {UpdateGroup.class, AddGroup.class}) + // @NotEmpty(message = "留样照片不能为空", groups = {UpdateGroup.class, AddGroup.class}) private String[] saveImg; private String saveImgStr; // @NotEmpty(message = "留样照片不能为空", groups = {WxUpdateGroup.class, WxAddGroup.class}) diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/ImageVO.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/ImageVO.java new file mode 100644 index 0000000..22ecc7f --- /dev/null +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/ImageVO.java @@ -0,0 +1,15 @@ +package com.zf.foodpurchase.fdsafe.vo; + +import com.zf.foodpurchase.common.utils.uuid.UUID; +import lombok.Data; + +/** + * @author:lilj + * @date:2025/7/21 + */ +@Data +public class ImageVO { + private String uid=UUID.fastUUID().toString(); + private String url; + +} diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/SupplierVO.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/SupplierVO.java index da626b4..e090e26 100644 --- a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/SupplierVO.java +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/SupplierVO.java @@ -18,6 +18,7 @@ import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; import java.io.Serializable; import java.util.Date; +import java.util.List; /** * @author:lilj @@ -82,12 +83,15 @@ public class SupplierVO extends CommonVO implements Serializable { */ private String[] licenseImg; private String licenseImgStr; + private List wxLicenseImg; /** * 食品经营许可证照片 */ private String[] foodLicenseImg; private String foodLicenseImgStr; + private List wxFoodLicenseImg; + /** * 创建时间 */ diff --git a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/WxImg.java b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/WxImg.java index 2bbe0b4..2fba1e4 100644 --- a/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/WxImg.java +++ b/fp-system/src/main/java/com/zf/foodpurchase/fdsafe/vo/WxImg.java @@ -1,5 +1,6 @@ package com.zf.foodpurchase.fdsafe.vo; +import com.zf.foodpurchase.common.utils.uuid.UUID; import lombok.Data; /** @@ -9,4 +10,5 @@ import lombok.Data; @Data public class WxImg { private String url; + private String uid= UUID.fastUUID().toString(); }