xyc
2025-01-08 c8c42a473eb1269d8c9eed26b90975340850b0ea
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/controller/XhProductModelController.java
@@ -6,6 +6,7 @@
import com.zt.common.annotation.QueryParam;
import com.zt.common.db.query.QueryFilter;
import com.zt.common.servlet.Result;
import com.zt.common.utils.CacheUtils;
import com.zt.common.utils.UUIDUtil;
import com.zt.common.validator.AssertUtils;
import com.zt.common.validator.ValidatorUtils;
@@ -32,6 +33,9 @@
import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -69,8 +73,9 @@
    }
    @GetMapping("tree")
    public Result<List<XhProductModel>> getTreeList(Boolean showXdy, Integer ztShow,Long productId) {
        List<XhProductModel> list = xhProductModelService.getAllTree(showXdy, ztShow,productId);
    public Result<List<XhProductModel>> getTreeList(Boolean showXdy, Integer ztShow, Long productId) {
        List<XhProductModel> list = xhProductModelService.getAllTree(showXdy, ztShow, productId);
        return Result.ok(list);
    }
@@ -91,9 +96,23 @@
        return Result.ok(data);
    }
    @GetMapping("getImg")
    @ApiOperation("信息")
    public void getImg(HttpServletResponse response, Long id) {
        xhProductModelService.getImg(response, id);
    }
    @GetMapping("getProductList")
    public Result<List<XhProductModel>> getProductList() {
        List<XhProductModel> list = xhProductModelService.getProductList();
    public Result<List<XhProductModel>> getProductList(Long shipId, Integer productType) {
        if (productType == 2) {
            shipId = null;
        }
        List<XhProductModel> list = xhProductModelService.getProductList(shipId, productType - 1);
        if (productType == 5) {
            List<XhProductModel> list2 = xhProductModelService.getProductList(shipId, productType - 2);
            list.addAll(list2);
        }
        return Result.ok(list);
    }
@@ -120,6 +139,15 @@
        return result;
    }
    @GetMapping("exportData")
    @ApiOperation("导出产品模型")
    @LogOperation("导出产品模型")
    public Result exportDataExcel(HttpServletRequest request, HttpServletResponse response, Long shipId, String fileName) {
        xhProductModelService.exportDataExcel(request, response, shipId, fileName);
        return null;
    }
    @PostMapping
    @ApiOperation("新增")
@@ -127,25 +155,7 @@
    public Result insert(@RequestBody XhProductModel xhProductModel) {
        //效验数据
        ValidatorUtils.validateEntity(xhProductModel, AddGroup.class, DefaultGroup.class);
        Integer no = xhProductModelService.getNo(xhProductModel.getPid(), xhProductModel.getProductType());
        if (xhProductModel.getSort() == null || xhProductModel.getSort() < no) {
            xhProductModel.setSort(no + 1);
        }
        if (xhProductModel.getProductType().equals("2")){
            Long id = UUIDUtil.generateId();
            xhProductModel.setId(id);
            xhProductModel.setShipId(id);
            ParamData data =new ParamData();
            data.setShipId(id);
            data.setProductId(id);
            data.setPageCode("expect");
            paramDataService.insert(data);
        }
        xhProductModelService.insert(xhProductModel);
        xhProductModelService.insertProduct(xhProductModel);
        return Result.ok();
    }
@@ -156,6 +166,11 @@
            xhProductModel.setId(null);
            xhProductModel.setSort(xhProductModel.getSort());
            xhProductModel.setProductType(xhProductModel.getNodeType());
            if (xhProductModel.getNamePath() == null) {
                xhProductModel.setNamePath(xhProductModel.getName());
            } else {
                xhProductModel.setNamePath(xhProductModel.getNamePath() + "," + xhProductModel.getName());
            }
            this.insert(xhProductModel);
        }
        return Result.ok();
@@ -167,8 +182,7 @@
    public Result update(@RequestBody XhProductModel xhProductModel) {
        //效验数据
        ValidatorUtils.validateEntity(xhProductModel, UpdateGroup.class, DefaultGroup.class);
        xhProductModelService.update(xhProductModel);
        xhProductModelService.updateProduct(xhProductModel);
        return Result.ok();
    }
@@ -178,9 +192,21 @@
    public Result delete(@RequestBody Long[] ids) {
        //效验数据
        AssertUtils.isArrayEmpty(ids, "id");
        xhProductModelService.delete(ids);
        this.deleteByProduct(ids);
        return Result.ok();
    }
    private void deleteByProduct(Long[] ids) {
        Map<Long, XhProductModel> imgMap = new HashMap<>();
        imgMap = (Map<Long, XhProductModel>) CacheUtils.get("sysImgCache", "sysImgCache");
        for (Long id : ids) {
            Long[] list = xhProductModelService.getByPid(id);
            if (list.length > 0) {
                this.deleteByProduct(list);
            }
            imgMap.remove(id);
            xhProductModelService.deleteLogic(id);
        }
    }
}