package com.szwl.controller; import cn.com.crbank.ommo.bean.ResultMessage; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.gexin.fastjson.JSON; import com.szwl.constant.ResponseCodesEnum; import com.szwl.model.bo.R; import com.szwl.model.bo.ResponseModel; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.szwl.model.entity.TAdmin; import com.szwl.model.entity.TEquipment; import com.szwl.model.entity.TProduct; import com.szwl.model.entity.TPromoCode; //import com.szwl.model.page.Pageable; import com.szwl.model.page.TProductPageable; import com.szwl.model.query.TEquipmentParam; import com.szwl.model.utils.PushUtils; import com.szwl.service.TAdminService; import com.szwl.service.TEquipmentService; import com.szwl.service.TProductService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; /** *

* 商品价格表 前端控制器 *

* * @author wuhs * @since 2022-04-23 */ @Api(value = "/tProduct", tags = {"商品"}) @RestController @RequestMapping("/tProduct") public class TProductController { @Autowired TEquipmentService tEquipmentService; @Autowired TProductService tProductService; @Autowired TAdminService tAdminService; @ApiOperation(value = "查询商品列表信息") @GetMapping("/selectProducts") public ResponseEntity selectProducts(String equipmentId){ if(StringUtils.isEmpty(equipmentId)){ return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(false).setData(null).setMessage("")); } LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TProduct::getEquipmentId,Long.valueOf(equipmentId)); List list = tProductService.list(query); return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(true).setData(list).setMessage("SUCCESS")); } //修改花型是否显示 @ApiOperation(value = "修改花型是否显示") @PostMapping("/updateProductsShow") public ResponseEntity updateProductsShow(@RequestBody String productList) { List products = new ArrayList<>(); JSONObject jsonObject = JSONObject.parseObject(productList); products = JSONObject.parseArray(jsonObject.get("productList").toString(), TProduct.class); if(products.size()>0){ TProduct tProduct = products.get(0); if(tProduct==null&&tProduct.getEquipmentId()==null){ return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(false).setData("").setMessage("请退出重试")); } } TEquipment equipment = tEquipmentService.getById(products.get(0).getEquipmentId()); if(equipment==null){ return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(false).setData("").setMessage("请退出重试")); } List list = new ArrayList<>(); for(TProduct product:products){ if(product!=null&&product.getId()!=null){ // tProductService.updateById(product); if(StringUtils.isEmpty(product.getShowType())){ product.setShowType("0"); } product.setModifyDate(null); product.setCreateDate(null); product.setCodePrice(null); product.setRmbPrice(null); list.add(product); // tEquipmentService.sentMessage(equipment.getClientId(), PushUtils.buildJson("updateProductsShow", product.toString()).toString()); } } tEquipmentService.sentMessage(equipment.getClientId(), PushUtils.buildJson("updateProductsShow", JSON.toJSONString(list)).toString()); return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(true).setData("").setMessage("修改成功")); } @ApiOperation(value = "/多个花型价格") @GetMapping("/updateProduct") public ResponseModel updateProduct(String no,String price,String equipmentId,String type) { if(StringUtils.isEmpty(price)||StringUtils.isEmpty(equipmentId)){ return R.fail(ResponseCodesEnum.A0001,"数据有空"); } TEquipment equipment = tEquipmentService.getById(equipmentId); if(equipment==null||equipment.getId()==null){ return R.fail(ResponseCodesEnum.A0001,"请退出重试"); } //修改单个 if(type.equals("0")){ LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TProduct::getEquipmentId,Long.valueOf(equipmentId)); if(StringUtils.isEmpty(no)){ return R.fail(ResponseCodesEnum.A0001,"数据有空"); } query.eq(TProduct::getNo,no); List list = tProductService.list(query); if(list.size()>0){ TProduct product = list.get(0); product.setModifyDate(new Date()); product.setCodePrice(new BigDecimal(price)); product.setRmbPrice(new BigDecimal(price)); tProductService.updateById(product); } } //修改多个 if(type.equals("1")){ LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TProduct::getEquipmentId,Long.valueOf(equipmentId)); List list = tProductService.list(query); if(list.size()>0){ for(TProduct product:list){ product.setModifyDate(new Date()); product.setCodePrice(new BigDecimal(price) ); product.setRmbPrice(new BigDecimal(price) ); tProductService.updateById(product); } } } tEquipmentService.sentMessage(equipment.getClientId(), PushUtils.buildJson("updateProductsPrice", "0").toString()); return R.ok(null,"修改成功"); } @ApiOperation(value = "获取商品") @GetMapping("/getProduct") public ResponseModel getProduct(@RequestParam(value = "equipmentId")String equipmentId,@RequestParam(value = "productName")String productName) { LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TProduct::getProductName,productName); query.eq(TProduct::getEquipmentId,Long.valueOf(equipmentId)); List list = tProductService.list(query); TProduct tProduct = list.get(0); return R.ok(tProduct); } @ApiOperation(value = "查询商品列表信息") @PostMapping("/selectProductList") public ResponseModel> selectProductList(@RequestBody TEquipmentParam param) { // public ResponseModel> selectProductList(@RequestParam(value = "clientId")String clientId,@RequestParam(value = "current") long current, @RequestParam(value = "size") long size) { if(StringUtils.isEmpty(param.getClientId())){ return null; } LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TEquipment::getClientId,param.getClientId()); List list = tEquipmentService.list(query); if(list.size()>0){ TEquipment equipment = list.get(0); LambdaQueryWrapper query1 = Wrappers.lambdaQuery(); query1.eq(TProduct::getEquipmentId,equipment.getId()); // List list1 = tProductService.list(query1); Page page = new Page<>(param.getCurrent(), param.getSize(), true); IPage iPage = tProductService.page(page, query1); // TProductPageable pageable = new TProductPageable(); // pageable.setCurrent(iPage.getCurrent()); // pageable.setPages(iPage.getPages()); // pageable.setRecords(iPage.getRecords()); // pageable.setSize(iPage.getSize()); // pageable.setTotal(iPage.getTotal()); // return R.ok(pageable); // return pageable; return R.ok(iPage); } return null; } @ApiOperation(value = "查询商品列表信息 下拉列表查询") @GetMapping("/getProducts") public ResponseEntity getProducts(String adminId){ if(StringUtils.isEmpty(adminId)){ return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(false).setData(null).setMessage("")); } TAdmin admin = tAdminService.getById(adminId); if(admin.getType()==3){ TAdmin parentAdmin = tAdminService.getById(admin.getParentId()); adminId = String.valueOf(parentAdmin.getId()); } if(admin.getType()<2){ adminId = "5"; } LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TEquipment::getAdminId,adminId); List list = tEquipmentService.list(query); List list1 = new ArrayList<>(); if(list.size()>0){ TEquipment equipment = list.get(0); LambdaQueryWrapper query1 = Wrappers.lambdaQuery(); query1.eq(TProduct::getEquipmentId,equipment.getId()); list1 = tProductService.list(query1); return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(true).setData(list1).setMessage("SUCCESS")); }else { return ResponseEntity.status(HttpStatus.OK) .body(new ResultMessage().setCode(false).setData(list1).setMessage("")); } } }