|  |  | 
 |  |  | import com.zt.common.annotation.QueryParam; | 
 |  |  | import com.zt.common.db.query.QueryFilter; | 
 |  |  | import com.zt.common.servlet.Result; | 
 |  |  | import com.zt.common.servlet.PageResult; | 
 |  |  | import com.zt.common.validator.AssertUtils; | 
 |  |  | import com.zt.common.validator.ValidatorUtils; | 
 |  |  | import com.zt.common.validator.group.AddGroup; | 
 |  |  | import com.zt.common.validator.group.DefaultGroup; | 
 |  |  | import com.zt.common.validator.group.UpdateGroup; | 
 |  |  | import com.zt.life.modules.mainPart.basicInfo.model.TyProductModel; | 
 |  |  | import com.zt.life.core.service.ZtProductService; | 
 |  |  | import com.zt.life.dto.ImportErrDto; | 
 |  |  | import com.zt.life.modules.mainPart.basicInfo.model.ProductImg; | 
 |  |  | import com.zt.life.modules.mainPart.basicInfo.model.XhProductModel; | 
 |  |  | import com.zt.life.modules.mainPart.basicInfo.service.XhProductModelService; | 
 |  |  | import com.zt.life.modules.sysPictureBase.service.SysPictureBaseService; | 
 |  |  | import com.zt.life.modules.mainPart.sysPictureBase.service.SysPictureBaseService; | 
 |  |  | import com.zt.life.util.ImportUtil; | 
 |  |  | import com.zt.modules.oss.service.SysOssService; | 
 |  |  | import io.swagger.annotations.Api; | 
 |  |  | import io.swagger.annotations.ApiImplicitParam; | 
 |  |  | import io.swagger.annotations.ApiImplicitParams; | 
 |  |  | import io.swagger.annotations.ApiOperation; | 
 |  |  | import org.apache.commons.lang.StringUtils; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.web.bind.annotation.*; | 
 |  |  | import org.springframework.web.multipart.MultipartFile; | 
 |  |  | import springfox.documentation.annotations.ApiIgnore; | 
 |  |  |  | 
 |  |  | import javax.servlet.http.HttpServletResponse; | 
 |  |  | import javax.annotation.Resource; | 
 |  |  | import java.util.List; | 
 |  |  | import java.util.Map; | 
 |  |  |  | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * product_model | 
 |  |  |  * | 
 |  |  |  * @author zt generator  | 
 |  |  |  * @author zt generator | 
 |  |  |  * @since 1.0.0 2024-02-29 | 
 |  |  |  */ | 
 |  |  | @RestController | 
 |  |  | @RequestMapping("/basicInfo/XhProductModel/") | 
 |  |  | @Api(tags="product_model") | 
 |  |  | @Api(tags = "product_model") | 
 |  |  | public class XhProductModelController { | 
 |  |  |     @Autowired | 
 |  |  |     private XhProductModelService xhProductModelService; | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private SysOssService sysOssService; | 
 |  |  |     @Autowired | 
 |  |  |     private SysPictureBaseService sysPictureBaseService; | 
 |  |  |  | 
 |  |  |     @GetMapping("page") | 
 |  |  |     @ApiOperation("分页") | 
 |  |  |     @ApiImplicitParams({ | 
 |  |  |         @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT), | 
 |  |  |         @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT), | 
 |  |  |         @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING), | 
 |  |  |         @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING), | 
 |  |  |         @ApiImplicitParam(name = "name", value = "名称", dataType = Constant.QT.STRING, format = "NAME^LK"), | 
 |  |  |         @ApiImplicitParam(name = "nodeType", value = "节点类型", dataType = Constant.QT.STRING, format = "node_type^EQ"), | 
 |  |  |         @ApiImplicitParam(name = "pid", value = "上级ID", dataType = Constant.QT.STRING) | 
 |  |  |             @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING), | 
 |  |  |             @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING), | 
 |  |  |             @ApiImplicitParam(name = "name", value = "名称", dataType = Constant.QT.STRING, format = "NAME^LK"), | 
 |  |  |             @ApiImplicitParam(name = "productType", value = "节点类型", dataType = Constant.QT.STRING, format = "product_type^EQ"), | 
 |  |  |             @ApiImplicitParam(name = "pid", value = "上级ID", dataType = Constant.QT.STRING) | 
 |  |  |     }) | 
 |  |  |     public PageResult<XhProductModel> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ | 
 |  |  |         return PageResult.ok(xhProductModelService.page(queryFilter)); | 
 |  |  |     public Result<List<XhProductModel>> page(@ApiIgnore @QueryParam QueryFilter queryFilter) { | 
 |  |  |         return Result.ok(xhProductModelService.page(queryFilter)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @GetMapping("tree") | 
 |  |  |     public Result<List<XhProductModel>> getTreeList() { | 
 |  |  |         List<XhProductModel> list = xhProductModelService.getAllTree(); | 
 |  |  |     public Result<List<XhProductModel>> getTreeList(Boolean showXdy, Integer ztShow,Long productId) { | 
 |  |  |         List<XhProductModel> list = xhProductModelService.getAllTree(showXdy, ztShow,productId); | 
 |  |  |  | 
 |  |  |         return Result.ok(list); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @GetMapping("getProduct") | 
 |  |  |     public Result<List<ProductImg>> getProduct(Long productId) { | 
 |  |  |         List<ProductImg> list = xhProductModelService.getProduct(productId); | 
 |  |  |         return Result.ok(list); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @GetMapping("{id}") | 
 |  |  |     @ApiOperation("信息") | 
 |  |  |     public Result<XhProductModel> get(@PathVariable("id") Long id){ | 
 |  |  |     public Result<XhProductModel> get(@PathVariable("id") Long id) { | 
 |  |  |         XhProductModel data = xhProductModelService.get(id); | 
 |  |  |         Long busid = null; | 
 |  |  |         String fileName = ""; | 
 |  |  |         if (StringUtils.isNotBlank(data.getOperationalStatus())&&sysOssService.get(Long.parseLong(data.getOperationalStatus()))!=null){ | 
 |  |  |             busid =sysOssService.get(Long.parseLong(data.getOperationalStatus())).getBusiId(); | 
 |  |  |             fileName =sysPictureBaseService.get(busid).getName(); | 
 |  |  |             data.setOperationalStatus(fileName); | 
 |  |  |         } | 
 |  |  |         if (StringUtils.isNotBlank(data.getStandbyState())&&sysOssService.get(Long.parseLong(data.getStandbyState()))!=null){ | 
 |  |  |             busid =sysOssService.get(Long.parseLong(data.getStandbyState())).getBusiId(); | 
 |  |  |             fileName =sysPictureBaseService.get(busid).getName(); | 
 |  |  |             data.setStandbyState(fileName); | 
 |  |  |         } | 
 |  |  |         if (StringUtils.isNotBlank(data.getFaultState())&&sysOssService.get(Long.parseLong(data.getFaultState()))!=null){ | 
 |  |  |             busid =sysOssService.get(Long.parseLong(data.getFaultState())).getBusiId(); | 
 |  |  |             fileName =sysPictureBaseService.get(busid).getName(); | 
 |  |  |             data.setFaultState(fileName); | 
 |  |  |         if (data.getOperatImg() != null) { | 
 |  |  |             data.setOperatImgName(sysPictureBaseService.get(data.getOperatImg()).getName()); | 
 |  |  |         } | 
 |  |  |         return Result.ok(data); | 
 |  |  |     } | 
 |  |  | 
 |  |  |         return Result.ok(list); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @GetMapping("getTaskProductList") | 
 |  |  |     public Result<List<XhProductModel>> getTaskProductList() { | 
 |  |  |         List<XhProductModel> list = xhProductModelService.getTaskProductList(); | 
 |  |  |         return Result.ok(list); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PostMapping("importProductExcel") | 
 |  |  |     @ApiOperation("导入产品模型") | 
 |  |  |     @LogOperation("导入产品模型") | 
 |  |  |     public Result importProductExcel(MultipartFile file, String progressId, Long pid) { | 
 |  |  |         Result<List<ImportErrDto>> result = Result.ok(); | 
 |  |  |         try { | 
 |  |  |             List<Map<String, Object>> importResults = xhProductModelService.importProductExcel(file, progressId, pid); | 
 |  |  |             StringBuilder str = new StringBuilder(); | 
 |  |  |             ImportUtil.importResult(result, importResults, str); | 
 |  |  |             ImportUtil.ImportErrResult(result, importResults, str); | 
 |  |  |  | 
 |  |  |         } catch (Exception e) { | 
 |  |  |             e.printStackTrace(); | 
 |  |  |         } | 
 |  |  |         return result; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @PostMapping | 
 |  |  |     @ApiOperation("新增") | 
 |  |  |     @LogOperation("新增") | 
 |  |  |     public Result insert(@RequestBody XhProductModel xhProductModel){ | 
 |  |  |     public Result insert(@RequestBody XhProductModel xhProductModel) { | 
 |  |  |         //效验数据 | 
 |  |  |         ValidatorUtils.validateEntity(xhProductModel, AddGroup.class, DefaultGroup.class); | 
 |  |  |         Integer no = xhProductModelService.getNo(xhProductModel.getPid()); | 
 |  |  |         xhProductModel.setSort(no + 1); | 
 |  |  |  | 
 |  |  |         Integer no = xhProductModelService.getNo(xhProductModel.getPid(), xhProductModel.getProductType()); | 
 |  |  |         if (xhProductModel.getSort() == null || xhProductModel.getSort() < no) { | 
 |  |  |             xhProductModel.setSort(no + 1); | 
 |  |  |         } | 
 |  |  |         xhProductModelService.insert(xhProductModel); | 
 |  |  |  | 
 |  |  |         return Result.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PostMapping("get") | 
 |  |  |     public Result getSelect(@RequestBody List<XhProductModel> list){ | 
 |  |  |         for(XhProductModel xhProductModel:list){ | 
 |  |  |     public Result getSelect(@RequestBody List<XhProductModel> list) { | 
 |  |  |         for (XhProductModel xhProductModel : list) { | 
 |  |  |             xhProductModel.setSrcId(xhProductModel.getId()); | 
 |  |  |             xhProductModel.setId(null); | 
 |  |  |             xhProductModel.setSort(xhProductModel.getSort()); | 
 |  |  |             xhProductModel.setProductType(xhProductModel.getNodeType()); | 
 |  |  |             this.insert(xhProductModel); | 
 |  |  |         } | 
 |  |  |         return Result.ok(); | 
 |  |  | 
 |  |  |     @PutMapping | 
 |  |  |     @ApiOperation("修改") | 
 |  |  |     @LogOperation("修改") | 
 |  |  |     public Result update(@RequestBody XhProductModel xhProductModel){ | 
 |  |  |     public Result update(@RequestBody XhProductModel xhProductModel) { | 
 |  |  |         //效验数据 | 
 |  |  |         ValidatorUtils.validateEntity(xhProductModel, UpdateGroup.class, DefaultGroup.class); | 
 |  |  |         xhProductModelService.update(xhProductModel); | 
 |  |  | 
 |  |  |     @DeleteMapping | 
 |  |  |     @ApiOperation("删除") | 
 |  |  |     @LogOperation("删除") | 
 |  |  |     public Result delete(@RequestBody Long[] ids){ | 
 |  |  |     public Result delete(@RequestBody Long[] ids) { | 
 |  |  |         //效验数据 | 
 |  |  |         AssertUtils.isArrayEmpty(ids, "id"); | 
 |  |  |         xhProductModelService.delete(ids); |