提交 f93e5f66 作者: xiaowang

Merge branch 'develop'

...@@ -18,4 +18,4 @@ patches: ...@@ -18,4 +18,4 @@ patches:
images: images:
- name: REGISTRY/NAMESPACE/IMAGE:TAG - name: REGISTRY/NAMESPACE/IMAGE:TAG
newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/pms newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/pms
newTag: 35df056741ac63691a9776802d9c57ee52186d2f newTag: 5ba310b088b2e89e0a2898c5754568921095446d
...@@ -210,8 +210,8 @@ public enum ResultEnum implements BaseErrorInfoInterface { ...@@ -210,8 +210,8 @@ public enum ResultEnum implements BaseErrorInfoInterface {
ACCOUNT_ALREADY_DELETED("10001", "此账号已经被删除"), ACCOUNT_ALREADY_DELETED("10001", "此账号已经被删除"),
ACCOUNT_ALREADY_STOP("10002", "此账号已经被停用,不能登录此小程序,详情请联系管理员"), ACCOUNT_ALREADY_STOP("10002", "此账号已经被停用,不能登录此小程序,详情请联系管理员"),
INDUSTRY_NAME_CREATE_ERROR("20001", "行业名称请勿重复,请重新输入"), INDUSTRY_NAME_CREATE_ERROR("20001", "行业名称重复,请重新输入"),
INSPECTION_NAME_CREATE_ERROR("20002", "服务名称请勿重复,请重新输入"), INSPECTION_NAME_CREATE_ERROR("20002", "服务名称重复,请重新输入"),
INSPECTION_REPEAT("20003", "绑定服务重复"), INSPECTION_REPEAT("20003", "绑定服务重复"),
INDUSTRY_REPEAT("20004", "绑定行业重复"), INDUSTRY_REPEAT("20004", "绑定行业重复"),
...@@ -410,7 +410,8 @@ public enum ResultEnum implements BaseErrorInfoInterface { ...@@ -410,7 +410,8 @@ public enum ResultEnum implements BaseErrorInfoInterface {
DEFAULT_DIRECTORY("3001", "默认目录不可删除或修改名称!"), DEFAULT_DIRECTORY("3001", "默认目录不可删除或修改名称!"),
THE_NAME_OF_A_CLASS_MUST_BE_UNIQUE("3002", "一级分类名称重复"), THE_NAME_OF_A_CLASS_MUST_BE_UNIQUE("3002", "一级分类名称重复"),
THE_CURRENT_CATEGORY_IS_ASSOCIATED_WITH_GOODS("3004", "当前分类已经关联商品请先删除商品"), THE_CURRENT_CATEGORY_IS_ASSOCIATED_WITH_GOODS("3004", "当前分类已经关联商品请先删除商品"),
THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE("3003", "同一级分类下面二级分类不能重复"); THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE("3003", "同一级分类下面二级分类不能重复"),
NAME_DUPLICATION_ERROR("3005", "名称重复");
/** /**
* 错误码 * 错误码
* *
......
package com.mmc.pms.controller; package com.mmc.pms.controller;
import com.mmc.pms.common.ResultBody; import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.category.qo.ModeInfoQO;
import com.mmc.pms.model.category.vo.ModeInfoVO;
import com.mmc.pms.model.sale.dto.BrandInfoDTO; import com.mmc.pms.model.sale.dto.BrandInfoDTO;
import com.mmc.pms.service.BrandManageService; import com.mmc.pms.service.BrandManageService;
import io.swagger.annotations.*; import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/** /**
* @Author LW * @Author LW
...@@ -17,8 +16,8 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -17,8 +16,8 @@ import org.springframework.web.bind.annotation.RestController;
*/ */
@RestController @RestController
@RequestMapping("/brand") @RequestMapping("/brand")
@Api(tags = {"后台-品牌管理-相关接口"}) @Api(tags = {"V1.0.3-品牌管理-相关接口"})
public class BackstageBrandManageController { public class BrandManageController {
@Autowired @Autowired
private BrandManageService brandManageService; private BrandManageService brandManageService;
...@@ -33,11 +32,11 @@ public class BackstageBrandManageController { ...@@ -33,11 +32,11 @@ public class BackstageBrandManageController {
@ApiOperation(value = "品牌列表") @ApiOperation(value = "品牌列表")
@GetMapping("listBrandInfo") @GetMapping("listBrandInfo")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = BrandInfoDTO.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = BrandInfoDTO.class)})
public ResultBody listBrandInfo(@RequestParam Integer pageNo, @RequestParam Integer pageSize) { public ResultBody<BrandInfoDTO> listBrandInfo(@RequestParam Integer pageNo, @RequestParam Integer pageSize) {
return ResultBody.success(brandManageService.listBrandInfo(pageNo, pageSize)); return ResultBody.success(brandManageService.listBrandInfo(pageNo, pageSize));
} }
@ApiOperation(value = "删除品牌") @ApiOperation(value = "删除品牌---待与运营沟通")
@GetMapping("deleteBrandInfo") @GetMapping("deleteBrandInfo")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody deleteBrandInfo(Integer id) { public ResultBody deleteBrandInfo(Integer id) {
...@@ -51,4 +50,26 @@ public class BackstageBrandManageController { ...@@ -51,4 +50,26 @@ public class BackstageBrandManageController {
return brandManageService.editBrandInfo(id, brandName); return brandManageService.editBrandInfo(id, brandName);
} }
@ApiOperation(value = "新增型号")
@PostMapping("addMode")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody addMode(@RequestBody ModeInfoVO param) {
return brandManageService.addMode(param);
}
@ApiOperation(value = "型号列表")
@PostMapping("modeList")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ModeInfoVO.class)})
public ResultBody modeList(@RequestBody ModeInfoQO param) {
return ResultBody.success(brandManageService.modeList(param));
}
@ApiOperation(value = "编辑型号")
@PostMapping("editMode")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody editMode(@RequestBody ModeInfoVO param) {
return brandManageService.editMode(param);
}
} }
package com.mmc.pms.controller.category;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.category.vo.ProductTypeVO;
import com.mmc.pms.model.group.Create;
import com.mmc.pms.model.group.Update;
import com.mmc.pms.service.category.ProductAttributeService;
import io.swagger.annotations.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
* @Author LW
* @date 2023/8/5 10:35
* 概要:
*/
@RestController
@RequestMapping("/attribute")
@Api(tags = {"V1.0.3-产品属性-相关接口"})
public class ProductAttributeController {
@Resource
ProductAttributeService productAttributeService;
@ApiOperation(value = "类型新增")
@PostMapping("/addType")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody addType(@RequestBody @Validated(value = {Create.class}) ProductTypeVO param) {
return productAttributeService.addType(param);
}
@ApiOperation(value = "类型编辑")
@PostMapping("/editType")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody editType(@RequestBody @Validated(value = {Update.class}) ProductTypeVO param) {
return productAttributeService.editType(param);
}
@ApiOperation(value = "类型删除")
@GetMapping("/removeType")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody removeType(@RequestParam Integer id) {
return productAttributeService.removeType(id);
}
@ApiOperation(value = "类型详情")
@GetMapping("/typeDetails")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ProductTypeVO.class)})
public ResultBody<ProductTypeVO> typeDetails(@RequestParam Integer id) {
return productAttributeService.typeDetails(id);
}
@ApiOperation(value = "类型列表")
@GetMapping("/typeList")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ProductTypeVO.class)})
public ResultBody<ProductTypeVO> typeList(@RequestParam Integer pageNo, @RequestParam Integer pageSize) {
return ResultBody.success(productAttributeService.typeList(pageNo, pageSize));
}
@ApiOperation(value = "商品列表-排序")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("exchange")
public ResultBody exchange(@ApiParam(value = "第一个id", required = true) @RequestParam(value = "firstId") Integer firstId,
@ApiParam(value = "第二个id", required = true) @RequestParam(value = "secondId") Integer secondId) {
return productAttributeService.exchange(firstId, secondId);
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.Page;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.controller.BaseController;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.dto.InspectionDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
import com.mmc.pms.service.inspection.CompanyInspectionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
/**
* @author: zj
* @Date: 2023/8/4 16:26
*/
@Api(tags = {"团队服务"})
@RestController
@RequestMapping("/company-inspection/")
public class CompanyInspectionController extends BaseController {
@Autowired
private CompanyInspectionService companyInspectionService;
@ApiOperation(value = "新增单位服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody CompanyInspectionVO companyInspectionVO){
return companyInspectionService.insert(companyInspectionVO);
}
@ApiOperation(value = "修改单位服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody CompanyInspectionVO companyInspectionVO){
return companyInspectionService.update(companyInspectionVO);
}
@ApiOperation(value = "删除单位服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("remove")
public ResultBody remove(@RequestParam Integer id){
return companyInspectionService.remove(id);
}
@ApiOperation(value = "单位服务详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInspectionDTO.class)})
@GetMapping("getCompanyInspectionById")
public ResultBody<CompanyInspectionDTO> getCompanyInspectionById(@RequestParam Integer id, HttpServletRequest request){
return companyInspectionService.getCompanyInspectionById(id, this.getUserLoginInfoFromRedis(request));
}
@ApiOperation(value = "pc-单位服务列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInspectionDTO.class)})
@PostMapping("listCompanyInspectionPage")
public ResultBody<CompanyInspectionDTO> listCompanyInspectionPage(@Validated(value = {Page.class})
@RequestBody CompanyInspectionQO companyInspectionQO,
HttpServletRequest request){
return companyInspectionService.listCompanyInspectionPage(companyInspectionQO, this.getUserLoginInfoFromRedis(request));
}
@ApiOperation(value = "修改备注")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("updateRemark")
public ResultBody updateRemark(@RequestParam Integer id, @RequestParam(required = false) String remark){
return companyInspectionService.updateRemark(id, remark);
}
@ApiOperation(value = "价格单位列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("listInspectionPriceUnit")
public ResultBody listInspectionPriceUnit(){
return companyInspectionService.listInspectionPriceUnit();
}
@ApiOperation(value = "单位服务列表-小程序展示")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInspectionDTO.class)})
@PostMapping("listAPPCompanyInspectionPage")
public ResultBody<IndustryTypeDTO> listAPPCompanyInspectionPage(@Validated(value = {Page.class})
@RequestBody CompanyInspectionQO companyInspectionQO, HttpServletRequest request){
return companyInspectionService.listAPPCompanyInspectionPage(companyInspectionQO, this.getUserLoginInfoFromRedis(request));
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.Page;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.IndustryTypeQO;
import com.mmc.pms.service.inspection.IndustryTypeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
* @author: zj
* @Date: 2023/8/3 17:58
*/
@Api(tags = {"行业类型"})
@RestController
@RequestMapping("/industry/")
public class IndustryTypeController {
@Autowired
private IndustryTypeService industryTypeService;
@ApiOperation(value = "新增行业")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody IndustryTypeVO industryTypeVO){
return industryTypeService.insert(industryTypeVO);
}
@ApiOperation(value = "修改行业")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody IndustryTypeVO industryTypeVO){
return industryTypeService.update(industryTypeVO);
}
@ApiOperation(value = "删除行业")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("remove")
public ResultBody remove(@RequestParam Integer id){
return industryTypeService.remove(id);
}
@ApiOperation(value = "一级行业列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("listPages")
public ResultBody<IndustryTypeDTO> listPages(@Validated(value = {Page.class}) @RequestBody IndustryTypeQO industryTypeQO){
return industryTypeService.listPages(industryTypeQO);
}
@ApiOperation(value = "根据一级行业id查询二级服务列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = IndustryTypeDTO.class)})
@GetMapping("listInspectionsByIndustryTypeId")
public ResultBody<IndustryTypeDTO> listInspectionsByIndustryTypeId(@RequestParam Integer id){
return industryTypeService.listInspectionsByIndustryTypeId(id);
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.vo.InspectionVO;
import com.mmc.pms.service.inspection.InspectionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @author: zj
* @Date: 2023/8/4 15:32
*/
@Api(tags = {"服务"})
@RestController
@RequestMapping("/inspection/")
public class InspectionController {
@Autowired
private InspectionService inspectionService;
@ApiOperation(value = "新增服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody InspectionVO inspectionVO){
return inspectionService.insert(inspectionVO);
}
@ApiOperation(value = "修改服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody InspectionVO inspectionVO){
return inspectionService.update(inspectionVO);
}
@ApiOperation(value = "删除服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("remove")
public ResultBody remove(@RequestParam Integer id){
return inspectionService.remove(id);
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
import com.mmc.pms.service.inspection.InspectionTagService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @author: zj
* @Date: 2023/8/4 15:33
*/
@Api(tags = {"服务标签"})
@RestController
@RequestMapping("/inspection-tag/")
public class InspectionTagController {
@Autowired
private InspectionTagService inspectionTagService;
@ApiOperation(value = "新增服务标签")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody InspectionTagVO inspectionTagVO){
return inspectionTagService.insert(inspectionTagVO);
}
@ApiOperation(value = "修改服务标签")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody InspectionTagVO inspectionTagVO){
return inspectionTagService.update(inspectionTagVO);
}
@ApiOperation(value = "删除服务标签")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("delete")
public ResultBody delete(@RequestParam Integer id){
return inspectionTagService.delete(id);
}
@ApiOperation(value = "根据服务id查询标签列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("listByInspectionId")
public ResultBody<InspectionTagDTO> listByInspectionId(@RequestParam Integer id){
return inspectionTagService.listByInspectionId(id);
}
}
package com.mmc.pms.controller.lease;
/**
* @Author LW
* @date 2023/8/4 10:35
* 概要:
*/
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.controller.BaseController;
import com.mmc.pms.model.mall.MallGoodsVO;
import com.mmc.pms.service.lease.LeaseGoodsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
/**
* @Author LW
* @date 2023/7/24 16:56 概要:
*/
@RestController
@RequestMapping("/lease/goods")
@Api(tags = {"V1.0.3-租赁商品-相关接口"})
public class LeaseGoodsController extends BaseController {
@Resource
LeaseGoodsService leaseGoodsService;
@ApiOperation(value = "新增商城商品")
@PostMapping("addLeaseGoods")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody addLeaseGoods(@RequestBody MallGoodsVO mallGoodsVO, HttpServletRequest request) {
return null;
// return leaseGoodsService.addLeaseGoods(mallGoodsVO, this.getUserLoginInfoFromRedis(request).getUserAccountId());
}
}
...@@ -2,11 +2,12 @@ package com.mmc.pms.controller.mall; ...@@ -2,11 +2,12 @@ package com.mmc.pms.controller.mall;
import com.mmc.pms.common.ResultBody; import com.mmc.pms.common.ResultBody;
import com.mmc.pms.controller.BaseController; import com.mmc.pms.controller.BaseController;
import com.mmc.pms.model.group.Insert;
import com.mmc.pms.model.mall.MallGoodsVO; import com.mmc.pms.model.mall.MallGoodsVO;
import com.mmc.pms.model.sale.dto.SkuUnitDTO;
import com.mmc.pms.model.sale.qo.MallGoodsInfoQO; import com.mmc.pms.model.sale.qo.MallGoodsInfoQO;
import com.mmc.pms.service.mall.MallGoodsService; import com.mmc.pms.service.mall.MallGoodsService;
import io.swagger.annotations.*; import io.swagger.annotations.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -26,7 +27,7 @@ public class MallGoodsController extends BaseController { ...@@ -26,7 +27,7 @@ public class MallGoodsController extends BaseController {
@ApiOperation(value = "新增商城商品") @ApiOperation(value = "新增商城商品")
@PostMapping("addMallGoods") @PostMapping("addMallGoods")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
public ResultBody addMallGoods(@RequestBody MallGoodsVO mallGoodsVO, HttpServletRequest request) { public ResultBody addMallGoods(@Validated(value = {Insert.class}) @RequestBody MallGoodsVO mallGoodsVO, HttpServletRequest request) {
return mallGoodsService.addMallGoods(mallGoodsVO, this.getUserLoginInfoFromRedis(request).getUserAccountId()); return mallGoodsService.addMallGoods(mallGoodsVO, this.getUserLoginInfoFromRedis(request).getUserAccountId());
} }
...@@ -44,12 +45,12 @@ public class MallGoodsController extends BaseController { ...@@ -44,12 +45,12 @@ public class MallGoodsController extends BaseController {
return mallGoodsService.editMallGoods(mallGoodsVO, this.getUserLoginInfoFromRedis(request).getUserAccountId()); return mallGoodsService.editMallGoods(mallGoodsVO, this.getUserLoginInfoFromRedis(request).getUserAccountId());
} }
@ApiOperation(value = "单位信息") // @ApiOperation(value = "单位信息")
@GetMapping("getSkuUnit") // @GetMapping("getSkuUnit")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = SkuUnitDTO.class)}) // @ApiResponses({@ApiResponse(code = 200, message = "OK", response = SkuUnitDTO.class)})
public ResultBody getSkuUnit() { // public ResultBody getSkuUnit() {
return mallGoodsService.getSkuUnit(); // return mallGoodsService.getSkuUnit();
} // }
@ApiOperation(value = "商品列表-分页") @ApiOperation(value = "商品列表-分页")
@PostMapping("listPageGoodsInfo") @PostMapping("listPageGoodsInfo")
......
...@@ -2,6 +2,9 @@ package com.mmc.pms.dao; ...@@ -2,6 +2,9 @@ package com.mmc.pms.dao;
import com.mmc.pms.entity.BrandInfoDO; import com.mmc.pms.entity.BrandInfoDO;
import com.mmc.pms.entity.category.DeviceModeDO;
import com.mmc.pms.model.category.qo.ModeInfoQO;
import com.mmc.pms.model.category.vo.ModeInfoVO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -71,4 +74,16 @@ public interface BrandManageDao { ...@@ -71,4 +74,16 @@ public interface BrandManageDao {
* @param brandInfoDO 品牌信息做 * @param brandInfoDO 品牌信息做
*/ */
void updateBrandInfo(BrandInfoDO brandInfoDO); void updateBrandInfo(BrandInfoDO brandInfoDO);
int countModeInfoByName(ModeInfoVO param);
void insertModeInfo(DeviceModeDO modeInfoDO);
int countModeInfo(ModeInfoQO param);
List<DeviceModeDO> listDeviceMode(ModeInfoQO param);
void updateModeInfo(DeviceModeDO modeInfoDO);
List<DeviceModeDO> listDeviceModeByBrandId(List<Integer> ids);
} }
package com.mmc.pms.dao.category;
import com.mmc.pms.entity.category.ProductTypeDO;
import com.mmc.pms.model.category.vo.ProductTypeVO;
import org.apache.ibatis.annotations.Mapper;
import java.util.Date;
import java.util.List;
/**
* @Author LW
* @date 2023/8/5 10:44
* 概要:
*/
@Mapper
public interface ProductAttributeDao {
int countTypeByName(ProductTypeVO param);
void addType(ProductTypeVO param);
void editType(ProductTypeVO param);
void removeType(Integer id);
ProductTypeDO getType(Integer id);
int countType();
List<ProductTypeDO> listType(Integer pageNo, Integer pageSize);
int updateProductAttribute(Integer id, Date createTime);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.CompanyInspectionDO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionFileVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/7 14:31
*/
@Mapper
public interface CompanyInspectionDao {
void insert(CompanyInspectionDO companyInspectionDO);
void update(CompanyInspectionDO companyInspectionDO);
void remove(Integer id);
CompanyInspectionDO getCompanyInspectionById(Integer id);
int countListCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
List<CompanyInspectionDO> listCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
void batchInsertCompanyInspectionFile(List<CompanyInspectionFileVO> companyInspectionFiles);
void updateRemark(Integer id, String remark);
int countListAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
List<CompanyInspectionDO> listAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.IndustryTypeDO;
import com.mmc.pms.entity.inspection.InspectionDO;
import com.mmc.pms.model.qo.IndustryTypeQO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/3 17:59
*/
@Mapper
public interface IndustryTypeDao {
int countSameName(Integer id, String typeName);
void insert(IndustryTypeDO industryTypeDO);
void update(IndustryTypeDO industryTypeDO);
void remove(Integer id);
int countListPages(IndustryTypeQO industryTypeQO);
List<IndustryTypeDO> listPages(IndustryTypeQO industryTypeQO);
List<InspectionDO> listInspectionsByIndustryTypeIdId(Integer industryTypeId);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.InspectionDO;
import org.apache.ibatis.annotations.Mapper;
/**
* @author: zj
* @Date: 2023/8/4 15:34
*/
@Mapper
public interface InspectionDao {
int countSameName(Integer id, String inspectionName);
void insert(InspectionDO inspectionDO);
void update(InspectionDO inspectionDO);
void remove(Integer id);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.InspectionTagDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/5 14:53
*/
@Mapper
public interface InspectionTagDao {
int countSameName(String tagName);
void insert(InspectionTagDO inspectionTagDO);
void update(InspectionTagDO inspectionTagDO);
void delete(Integer id);
List<InspectionTagDO> listByInspectionId(Integer id);
}
package com.mmc.pms.dao.lease;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author LW
* @date 2023/8/4 10:38
* 概要:
*/
@Mapper
public interface LeaseGoodsDao {
}
package com.mmc.pms.dao.mall; package com.mmc.pms.dao.mall;
import com.mmc.pms.entity.SkuUnitDO; import com.mmc.pms.entity.mall.*;
import com.mmc.pms.entity.mall.GoodsSpecDO;
import com.mmc.pms.entity.mall.GoodsSpecValuesDO;
import com.mmc.pms.entity.mall.MallGoodsDO;
import com.mmc.pms.entity.mall.MallGoodsResourcesDO;
import com.mmc.pms.model.mall.MallGoodsVO; import com.mmc.pms.model.mall.MallGoodsVO;
import com.mmc.pms.model.mall.SpecAttrVO;
import com.mmc.pms.model.sale.qo.MallGoodsInfoQO; import com.mmc.pms.model.sale.qo.MallGoodsInfoQO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -24,34 +21,16 @@ public interface MallGoodsDao { ...@@ -24,34 +21,16 @@ public interface MallGoodsDao {
void insertMallGoodsBaseInfo(MallGoodsDO mallGoodsDO); void insertMallGoodsBaseInfo(MallGoodsDO mallGoodsDO);
void insertGoodsSpec(GoodsSpecDO goodsSpecDO);
void batchInsertSpecValues(List<GoodsSpecValuesDO> goodsSpecValuesList);
void batchInsertMallGoodsResources(List<MallGoodsResourcesDO> mallGoodsResourcesList); void batchInsertMallGoodsResources(List<MallGoodsResourcesDO> mallGoodsResourcesList);
MallGoodsDO getMallGoodsBaseInfo(Integer id); MallGoodsDO getMallGoodsBaseInfo(Integer id);
List<MallGoodsResourcesDO> getMallGoodsResources(Integer id); List<MallGoodsResourcesDO> getMallGoodsResources(Integer id);
List<GoodsSpecDO> getMallGoodsSpec(Integer id);
List<GoodsSpecValuesDO> getMallGoodsSpecValues(List<Integer> ids);
void updateMallGoods(@Param("mallGoodsDO") MallGoodsDO mallGoodsDO); void updateMallGoods(@Param("mallGoodsDO") MallGoodsDO mallGoodsDO);
void deleteMallGoodsResources(Integer id); void deleteMallGoodsResources(Integer id);
void deleteGoodsSpec(List<Integer> deleteSpec);
void updateGoodsSpec(GoodsSpecDO goodsSpecDO);
void deleteGoodsSpecValues(List<Integer> deleteSpecValueId);
void updateGoodsSpecValue(GoodsSpecValuesDO goodsSpecValuesDO);
List<SkuUnitDO> getSkuUnit();
int countListMallGoods(MallGoodsInfoQO param); int countListMallGoods(MallGoodsInfoQO param);
List<MallGoodsDO> listMallGoods(MallGoodsInfoQO param); List<MallGoodsDO> listMallGoods(MallGoodsInfoQO param);
...@@ -63,4 +42,26 @@ public interface MallGoodsDao { ...@@ -63,4 +42,26 @@ public interface MallGoodsDao {
void removeMallGoods(Integer id); void removeMallGoods(Integer id);
void feignRemoveGoodsByBackUserAccountId(Integer id); void feignRemoveGoodsByBackUserAccountId(Integer id);
void batchInsertSpecAttr(List<SpecAttrValueDO> list);
void batchInsertPriceStock(List<PriceStockDO> list);
List<SpecAttrDO> listSpecAttr(Integer id);
List<PriceStockDO> listPriceStock(Integer id);
void insertSpecAttr(SpecAttrDO specAttrDO);
List<SpecAttrValueDO> listSpecAttrValue(List<Integer> specIds);
void deleteMallPriceStock(Integer id);
void deleteSpecAttr(List<Integer> delIds);
void updateSpecAttr(SpecAttrVO specAttrVO);
void deleteSpecAttrValue(List<Integer> delValueIds);
void updateSpecAttrValue(SpecAttrVO attrVO);
} }
package com.mmc.pms.entity.category;
import com.mmc.pms.model.category.vo.ModeInfoVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* (DeviceModeDO)实体类
*
* @author makejava
* @since 2023-08-10 11:26:00
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DeviceModeDO implements Serializable {
private static final long serialVersionUID = -76818224092139310L;
private Integer id;
private Integer brandInfoId;
private Integer productTypeId;
private String modelName;
private String tag;
private Date createTime;
private Date updateTime;
public DeviceModeDO(ModeInfoVO param) {
this.id = param.getId();
this.brandInfoId = param.getBrandInfoId();
this.productTypeId = param.getProductTypeId();
this.modelName = param.getModeName();
this.tag = param.getTag();
}
public ModeInfoVO buildModeInfoVO() {
return ModeInfoVO.builder().id(id).productTypeId(productTypeId)
.brandInfoId(brandInfoId).modeName(modelName).tag(tag).build();
}
}
package com.mmc.pms.entity.category;
import com.mmc.pms.model.category.vo.ProductTypeVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* (ProductTypeDO)实体类
*
* @author makejava
* @since 2023-08-05 14:21:20
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ProductTypeDO implements Serializable {
private static final long serialVersionUID = -18535389603045721L;
private Integer id;
private String name;
private String url;
private Date createTime;
private Date updateTime;
public ProductTypeVO buildProductType() {
return ProductTypeVO.builder().id(id).name(name).url(url).build();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/3 16:51
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionDO implements Serializable {
private static final long serialVersionUID = 7878853810484957829L;
private Integer id;
/**
* 单位id
*/
private Integer companyInfoId;
/**
* 服务范围
*/
private String serviceArea;
/**
* 服务id
*/
private Integer inspectionId;
/**
* 服务标签
*/
private Integer inspectionTagId;
/**
* 报价
*/
private BigDecimal price;
/**
* 报价说明
*/
private String priceRemark;
/**
* 价格单位
*/
private Integer inspectionPriceUnitId;
/**
* 详情页
*/
private String detailPage;
/**
* 销售状态,0停售,1在售
*/
private Integer saleState;
/**
* 备注
*/
private String remark;
private Date createTime;
IndustryTypeDO industryTypeDO;
InspectionDO inspectionDO;
InspectionTagDO inspectionTagDO;
List<CompanyInspectionFileDO> inspectionFileDOS;
public CompanyInspectionDTO buildCompanyInspectionDTO(){
return CompanyInspectionDTO.builder().id(this.id).companyInfoId(this.companyInfoId).serviceArea(this.serviceArea)
.inspectionId(this.inspectionId).inspectionTagId(this.inspectionTagId).price(this.price).priceRemark(this.priceRemark)
.inspectionPriceUnitId(this.inspectionPriceUnitId).detailPage(this.detailPage).saleState(this.getSaleState())
.remark(this.remark)
.industryTypeDTO(this.industryTypeDO == null ? null : this.industryTypeDO.buildIndustryTypeDTO())
.inspectionDTO(this.inspectionDO == null ? null : this.inspectionDO.buildInspectionDTO())
.inspectionTagDTO(this.inspectionTagDO == null ? null : this.inspectionTagDO.buildInspectionTagDTO())
.inspectionFirstImg(CollectionUtils.isEmpty(this.inspectionFileDOS) ? null :
this.inspectionFileDOS.stream().filter(i -> i.getFileType().equals(0) && i.getFirst().equals(1))
.findFirst().get().getFileUrl())
.inspectionFileDTOS(CollectionUtils.isEmpty(this.inspectionFileDOS) ? null :
this.inspectionFileDOS.stream().map(CompanyInspectionFileDO :: buildCompanyInspectionFileDTO)
.collect(Collectors.toList()))
.build();
}
public CompanyInspectionDO(CompanyInspectionVO companyInspectionVO) {
this.id = companyInspectionVO.getId();
this.companyInfoId = companyInspectionVO.getCompanyInfoId();
this.serviceArea = companyInspectionVO.getServiceArea();
this.inspectionId = companyInspectionVO.getInspectionId();
this.inspectionTagId = companyInspectionVO.getInspectionTagId();
this.price = companyInspectionVO.getPrice();
this.priceRemark = companyInspectionVO.getPriceRemark();
this.inspectionPriceUnitId = companyInspectionVO.getInspectionPriceUnitId();
this.detailPage = companyInspectionVO.getDetailPage();
this.saleState = companyInspectionVO.getSaleState();
this.remark = companyInspectionVO.getRemark();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.CompanyInspectionFileDTO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/3 16:59
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionFileDO implements Serializable {
private static final long serialVersionUID = -1708946698144647874L;
private Integer id;
private Integer fileType;
private Integer first;
private Integer companyInspectionId;
private String fileUrl;
public CompanyInspectionFileDTO buildCompanyInspectionFileDTO(){
return CompanyInspectionFileDTO.builder().id(id).fileType(fileType).first(first)
.companyInspectionId(companyInspectionId).fileUrl(fileUrl).build();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/3 16:23
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class IndustryTypeDO implements Serializable {
private static final long serialVersionUID = -3416853218669751905L;
private Integer id;
/**
* 行业类型名称
*/
private String typeName;
/**
* 行业图标
*/
private String typeImg;
/**
* 行业描述
*/
private String description;
/**
* 售卖状态,0停售,1在售
*/
private Integer saleState;
/**
* 创建时间
*/
private Date createTime;
/**
* 服务列表
*/
private List<InspectionDO> inspectionDOS;
public IndustryTypeDO(IndustryTypeVO industryTypeVO) {
this.id = industryTypeVO.getId();
this.typeName = industryTypeVO.getTypeName();
this.typeImg = industryTypeVO.getTypeImg();
this.description = industryTypeVO.getDescription();
this.saleState = industryTypeVO.getSaleState();
}
public IndustryTypeDTO buildIndustryTypeDTO(){
return IndustryTypeDTO.builder().id(this.id).typeName(this.typeName).typeImg(this.typeImg)
.description(this.description).saleState(this.saleState).createTime(this.createTime)
.inspectionDTOS(CollectionUtils.isNotEmpty(this.inspectionDOS) ?
this.inspectionDOS.stream().map(InspectionDO::buildInspectionDTO).collect(Collectors.toList()) : null)
.build();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.InspectionDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.inspection.vo.InspectionVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @author: zj
* @Date: 2023/8/3 16:36
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionDO implements Serializable {
private static final long serialVersionUID = -6888618752080050167L;
private Integer id;
/**
* 服务编号
*/
private String inspectionNo;
/**
* 服务名称
*/
private String inspectionName;
/**
* 行业类型id
*/
private Integer industryTypeId;
/**
* 服务图标
*/
private String inspectionImg;
/**
* 服务描述
*/
private String inspectionDescription;
/**
* 销售状态,0停售,1在售
*/
private Integer saleState;
/**
* 案例图
*/
private String caseImg;
/**
* 案例视频
*/
private String caseVideo;
/**
* 生成时间
*/
private Date createTime;
public InspectionDO(InspectionVO inspectionVO){
this.id = inspectionVO.getId();
this.industryTypeId = inspectionVO.getIndustryTypeId();
this.inspectionName = inspectionVO.getInspectionName();
this.inspectionNo = inspectionVO.getInspectionNo();
this.inspectionDescription = inspectionVO.getInspectionDescription();
this.inspectionImg = inspectionVO.getInspectionImg();
this.saleState = inspectionVO.getSaleState();
this.caseImg = inspectionVO.getCaseImg();
this.caseVideo = inspectionVO.getCaseVideo();
}
public InspectionDTO buildInspectionDTO(){
return InspectionDTO.builder().id(this.id).industryTypeId(this.industryTypeId).inspectionNo(this.inspectionNo)
.inspectionName(this.inspectionName).inspectionDescription(this.inspectionDescription).inspectionImg(this.inspectionImg)
.saleState(this.saleState).caseImg(this.caseImg).caseVideo(this.caseVideo).build();
}
}
package com.mmc.pms.entity.inspection;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/3 17:43
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionPriceUnitDO implements Serializable {
private static final long serialVersionUID = -7713968479630413576L;
private Integer id;
private String unitName;
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/3 16:43
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionTagDO implements Serializable {
private static final long serialVersionUID = 7161953693996458346L;
private Integer id;
/**
* 标签名称
*/
private String tagName;
/**
* 服务id
*/
private Integer inspectionId;
public InspectionTagDO(InspectionTagVO inspectionTagVO) {
this.id = inspectionTagVO.getId();
this.tagName = inspectionTagVO.getTagName();
this.inspectionId = inspectionTagVO.getInspectionId();
}
public InspectionTagDTO buildInspectionTagDTO() {
return InspectionTagDTO.builder().id(this.id).tagName(this.tagName).inspectionId(this.inspectionId).build();
}
}
...@@ -94,7 +94,7 @@ public class MallGoodsDO implements Serializable { ...@@ -94,7 +94,7 @@ public class MallGoodsDO implements Serializable {
public MallGoodsVO buildMallGoodsVO() { public MallGoodsVO buildMallGoodsVO() {
return MallGoodsVO.builder().id(id).userAccountId(userAccountId).tradeName(tradeName).description(description) return MallGoodsVO.builder().id(id).userAccountId(userAccountId).tradeName(tradeName).description(description)
.categoryPrimaryId(categoryPrimaryId).categorySubId(categorySubId).shelfStatus(shelfStatus) .categoryPrimaryId(categoryPrimaryId).categorySubId(categorySubId).shelfStatus(shelfStatus)
.goodsLabel(goodsLabel).labelShow(labelShow).goodsDetails(goodsDetails).build(); .goodsLabel(goodsLabel).labelShow(labelShow).createTime(createTime).goodsDetails(goodsDetails).build();
} }
public MallGoodsVO buildListMallGoodsVO() { public MallGoodsVO buildListMallGoodsVO() {
......
package com.mmc.pms.entity.mall;
import com.mmc.pms.model.mall.PriceStockVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 价格库存表(PriceStockDO)实体类
*
* @author makejava
* @since 2023-08-08 14:31:09
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PriceStockDO implements Serializable {
private static final long serialVersionUID = -64740182455155279L;
private Integer id;
/**
* 商品id
*/
private Integer mallGoodsId;
/**
* 商品规格
*/
private String productSpec;
/**
* 销售价格
*/
private BigDecimal salePrice;
/**
* sku图片
*/
private String skuImage;
/**
* 渠道价格
*/
private BigDecimal channelPrice;
/**
* 库存
*/
private Integer stock;
/**
* sku编码
*/
private String skuNo;
private Date createTime;
private Date updateTime;
public PriceStockDO(PriceStockVO param, Integer id) {
this.mallGoodsId = id;
this.productSpec = param.getProductSpec();
this.salePrice = param.getSalePrice();
this.skuImage = param.getSkuImage();
this.channelPrice = param.getChannelPrice();
this.stock = param.getStock();
this.skuNo = param.getSkuNo();
}
public PriceStockVO buildPriceStockVO() {
return PriceStockVO.builder().id(id).productSpec(productSpec).salePrice(salePrice)
.skuImage(skuImage).channelPrice(channelPrice).stock(stock).skuNo(skuNo).build();
}
}
package com.mmc.pms.entity.mall;
import com.mmc.pms.model.mall.SpecAttrVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* 规格属性表(SpecAttrDO)实体类
*
* @author makejava
* @since 2023-08-08 14:30:03
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SpecAttrDO implements Serializable {
private static final long serialVersionUID = -59237014539007263L;
private Integer id;
/**
* 商品id
*/
private Integer mallGoodsId;
/**
* 规格名称
*/
private String specName;
private Date createTime;
private Date updateTime;
public SpecAttrVO buildSpecAttr() {
return SpecAttrVO.builder().id(id).specName(specName).build();
}
}
package com.mmc.pms.entity.mall;
import com.mmc.pms.model.mall.SpecAttrVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* 规格属性表(SpecAttrDO)实体类
*
* @author makejava
* @since 2023-08-08 14:30:03
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SpecAttrValueDO implements Serializable {
private static final long serialVersionUID = -59237014539007263L;
private Integer id;
/**
* 商品id
*/
private Integer specAttrId;
/**
* 规格值名称
*/
private String specValueName;
private Date createTime;
public SpecAttrValueDO(SpecAttrVO specAttrVO) {
specAttrId = specAttrVO.getId();
specValueName = specAttrVO.getSpecName();
}
public SpecAttrVO buildSpecAttr() {
return SpecAttrVO.builder().id(id).specName(specValueName).build();
}
}
package com.mmc.pms.enums;
/**
* @author: zj
* @Date: 2023/7/26 16:25
*/
public enum CompanyTypeEnums {
KBT(0, "科比特"),
FRANCHISEE(1, "加盟商");
private Integer type;
private String name;
CompanyTypeEnums(Integer type, String name) {
this.type = type;
this.name = name;
}
public Integer getType() {
return type;
}
public String getName() {
return name;
}
}
package com.mmc.pms.enums;
import org.springframework.stereotype.Component;
/**
* @author: zj
* @Date: 2023/8/8 10:41
*/
public enum InspectionPriceUnitEnums {
DAY(1, "天"),
TIMES(2, "次"),
MILES(3, "公里"),
ACRE(4, "亩")
;
InspectionPriceUnitEnums(Integer id, String unitName) {
this.id = id;
this.unitName = unitName;
}
public Integer getId() {
return id;
}
public String getUnitName() {
return unitName;
}
private Integer id;
private String unitName;
}
...@@ -6,6 +6,7 @@ import com.mmc.pms.auth.dto.BUserAccountQO; ...@@ -6,6 +6,7 @@ import com.mmc.pms.auth.dto.BUserAccountQO;
import com.mmc.pms.auth.dto.CompanyInfoDTO; import com.mmc.pms.auth.dto.CompanyInfoDTO;
import com.mmc.pms.auth.dto.CompanyInfoVO; import com.mmc.pms.auth.dto.CompanyInfoVO;
import com.mmc.pms.auth.dto.UserAccountSimpleDTO; import com.mmc.pms.auth.dto.UserAccountSimpleDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.feign.hystrix.UserAppApiHystrix; import com.mmc.pms.feign.hystrix.UserAppApiHystrix;
import com.mmc.pms.model.qo.CompanyInfoQO; import com.mmc.pms.model.qo.CompanyInfoQO;
import com.mmc.pms.model.qo.UserAccountQO; import com.mmc.pms.model.qo.UserAccountQO;
...@@ -79,8 +80,11 @@ public interface UserAppApi { ...@@ -79,8 +80,11 @@ public interface UserAppApi {
* @return * @return
*/ */
@GetMapping("/userapp/company/getCompanyInfoById") @GetMapping("/userapp/company/getCompanyInfoById")
String getCompanyInfoById(@ApiParam(value = "单位", required = true) @RequestParam Integer id, @RequestHeader("token") String token); ResultBody<CompanyInfoVO> getCompanyInfoById(@ApiParam(value = "单位", required = true) @RequestParam Integer id, @RequestHeader("token") String token);
@PostMapping("/userapp/company/listCompanyPageBack") @PostMapping("/userapp/company/listCompanyPageBack")
List<CompanyInfoVO> listCompanyPage(@ApiParam(value = "单位查询QO", required = true) @RequestBody CompanyInfoQO companyInfoQO, @RequestHeader("token") String token); List<CompanyInfoVO> listCompanyPage(@ApiParam(value = "单位查询QO", required = true) @RequestBody CompanyInfoQO companyInfoQO, @RequestHeader("token") String token);
@PostMapping("/userapp/company/listCompanyInfoByIds")
List<CompanyInfoVO> feignListCompanyInfoByIds(@RequestBody List<Integer> ids, @RequestHeader("token") String token);
} }
...@@ -4,6 +4,7 @@ import com.mmc.pms.auth.dto.BUserAccountQO; ...@@ -4,6 +4,7 @@ import com.mmc.pms.auth.dto.BUserAccountQO;
import com.mmc.pms.auth.dto.CompanyInfoDTO; import com.mmc.pms.auth.dto.CompanyInfoDTO;
import com.mmc.pms.auth.dto.CompanyInfoVO; import com.mmc.pms.auth.dto.CompanyInfoVO;
import com.mmc.pms.auth.dto.UserAccountSimpleDTO; import com.mmc.pms.auth.dto.UserAccountSimpleDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.feign.UserAppApi; import com.mmc.pms.feign.UserAppApi;
import com.mmc.pms.model.qo.CompanyInfoQO; import com.mmc.pms.model.qo.CompanyInfoQO;
import com.mmc.pms.model.qo.UserAccountQO; import com.mmc.pms.model.qo.UserAccountQO;
...@@ -42,7 +43,7 @@ public class UserAppApiHystrix implements UserAppApi { ...@@ -42,7 +43,7 @@ public class UserAppApiHystrix implements UserAppApi {
} }
@Override @Override
public String getCompanyInfoById(Integer id, String token) { public ResultBody<CompanyInfoVO> getCompanyInfoById(Integer id, String token) {
log.error("熔断:feignListAppUserAccount:{}", id); log.error("熔断:feignListAppUserAccount:{}", id);
return null; return null;
} }
...@@ -52,4 +53,10 @@ public class UserAppApiHystrix implements UserAppApi { ...@@ -52,4 +53,10 @@ public class UserAppApiHystrix implements UserAppApi {
log.error("熔断:feignListAppUserAccount:{}", companyInfoQO); log.error("熔断:feignListAppUserAccount:{}", companyInfoQO);
return null; return null;
} }
@Override
public List<CompanyInfoVO> feignListCompanyInfoByIds(List<Integer> ids, String token) {
log.error("熔断:feignListCompanyInfoByIds:{}", ids);
return null;
}
} }
package com.mmc.pms.model.category.qo;
import com.mmc.pms.common.Page;
import com.mmc.pms.model.group.Freeze;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @Author LW
* @date 2023/8/10 11:20
* 概要:
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ModeInfoQO implements Serializable {
private static final long serialVersionUID = -4803514505953618319L;
@ApiModelProperty(value = "品牌id", example = "1")
private Integer brandInfoId;
@ApiModelProperty(value = "类型id", example = "1")
private Integer productTypeId;
@ApiModelProperty(value = "当前页", required = true, example = "1")
@NotNull(message = "当前页不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "页大小", required = true, example = "10")
@NotNull(message = "页大小不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
package com.mmc.pms.model.category.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Author LW
* @date 2023/8/10 11:20
* 概要:
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ModeInfoVO implements Serializable {
private static final long serialVersionUID = -4803514505953618319L;
@ApiModelProperty(value = "id", example = "1")
private Integer id;
@ApiModelProperty(value = "型号名称", example = "型号名称")
private String modeName;
@ApiModelProperty(value = "品牌id", example = "1")
private Integer brandInfoId;
@ApiModelProperty(value = "类型id", example = "1")
private Integer productTypeId;
@ApiModelProperty(value = "标签", example = "标签")
private String tag;
}
package com.mmc.pms.model.category.vo;
import com.mmc.pms.model.group.Create;
import com.mmc.pms.model.group.Update;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @Author LW
* @date 2023/8/5 14:32
* 概要:
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ProductTypeVO implements Serializable {
private static final long serialVersionUID = -1466513739991843345L;
@ApiModelProperty(value = "id", example = "1")
@NotNull(groups = {Update.class}, message = "id不能为空")
private Integer id;
@ApiModelProperty(value = "类型名称", example = "航拍无人机")
@NotEmpty(groups = {Create.class, Update.class}, message = "类型名称不能为空")
private String name;
@ApiModelProperty(value = "图标", example = "https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/ad0e77b4-8518-4ecc-9b7f-19218f56b755.png")
@NotEmpty(groups = {Create.class, Update.class}, message = "图标不能为空")
private String url;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/7 14:41
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionDTO implements Serializable {
private static final long serialVersionUID = -7994243059824987869L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "单位id")
private Integer companyInfoId;
@ApiModelProperty(value = "服务范围")
private String serviceArea;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
@ApiModelProperty(value = "服务标签")
private Integer inspectionTagId;
@ApiModelProperty(value = "报价")
private BigDecimal price;
@ApiModelProperty(value = "报价说明")
private String priceRemark;
@ApiModelProperty(value = "价格单位")
private Integer inspectionPriceUnitId;
@ApiModelProperty(value = "详情页")
private String detailPage;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "服务主图")
private String inspectionFirstImg;
@ApiModelProperty(value = "作业团队")
private String CompanyName;
@ApiModelProperty(value = "行业")
private IndustryTypeDTO industryTypeDTO;
@ApiModelProperty(value = "服务")
private InspectionDTO inspectionDTO;
@ApiModelProperty(value = "团队服务标签")
private InspectionTagDTO inspectionTagDTO;
@ApiModelProperty(value = "团队服务图片/视频")
private List<CompanyInspectionFileDTO> inspectionFileDTOS;
}
package com.mmc.pms.model.inspection.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/7 16:14
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionFileDTO implements Serializable {
private static final long serialVersionUID = -542881175952018418L;
private Integer id;
private Integer fileType;
private Integer first;
private Integer companyInspectionId;
private String fileUrl;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/4 14:54
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class IndustryTypeDTO implements Serializable {
private static final long serialVersionUID = -5832618357203415274L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "行业类型名称")
private String typeName;
@ApiModelProperty(value = "行业图标")
private String typeImg;
@ApiModelProperty(value = "行业描述")
private String description;
@ApiModelProperty(value = "售卖状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "服务列表")
private List<InspectionDTO> inspectionDTOS;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/4 16:43
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionDTO implements Serializable {
private static final long serialVersionUID = 8316723266007785996L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "服务编号")
private String inspectionNo;
@ApiModelProperty(value = "服务名称")
private String inspectionName;
@ApiModelProperty(value = "行业类型id")
private Integer industryTypeId;
@ApiModelProperty(value = "服务图标")
private String inspectionImg;
@ApiModelProperty(value = "服务描述")
private String inspectionDescription;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "案例图")
private String caseImg;
@ApiModelProperty(value = "案例视频")
private String caseVideo;
@ApiModelProperty(value = "团队服务列表")
List<CompanyInspectionDTO> companyInspectionDTOS;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/5 14:47
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionTagDTO implements Serializable {
private static final long serialVersionUID = -2590417413375903686L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "标签名称")
private String tagName;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/7 14:20
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionFileVO implements Serializable {
private static final long serialVersionUID = 2047984452706881958L;
private Integer id;
@ApiModelProperty(value = "文件类型,0图片,1视频")
private Integer fileType;
@ApiModelProperty(value = "是否第一张主图,0非主图,1主图")
private Integer first;
@ApiModelProperty(value = "团队服务id")
private Integer companyInspectionId;
@ApiModelProperty(value = "地址")
private String fileUrl;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/7 14:19
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionVO implements Serializable {
private static final long serialVersionUID = 6831143000193727239L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "单位id")
private Integer companyInfoId;
@ApiModelProperty(value = "服务范围")
private String serviceArea;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
@ApiModelProperty(value = "服务标签")
private Integer inspectionTagId;
@ApiModelProperty(value = "报价")
private BigDecimal price;
@ApiModelProperty(value = "报价说明")
private String priceRemark;
@ApiModelProperty(value = "价格单位")
private Integer inspectionPriceUnitId;
@ApiModelProperty(value = "详情页")
private String detailPage;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "图片/视频")
private List<CompanyInspectionFileVO> companyInspectionFiles;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/4 11:04
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class IndustryTypeVO implements Serializable {
private static final long serialVersionUID = 5109540128305323107L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "行业类型名称")
private String typeName;
@ApiModelProperty(value = "行业图标")
private String typeImg;
@ApiModelProperty(value = "行业描述")
private String description;
@ApiModelProperty(value = "售卖状态,0停售,1在售")
private Integer saleState;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/5 14:49
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionTagVO implements Serializable {
private static final long serialVersionUID = -725386990782995459L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "标签名称")
private String tagName;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/4 16:37
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionVO implements Serializable {
private static final long serialVersionUID = 3417959015512957324L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "服务编号")
private String inspectionNo;
@ApiModelProperty(value = "服务名称")
private String inspectionName;
@ApiModelProperty(value = "行业类型id")
private Integer industryTypeId;
@ApiModelProperty(value = "服务图标")
private String inspectionImg;
@ApiModelProperty(value = "服务描述")
private String inspectionDescription;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "案例图")
private String caseImg;
@ApiModelProperty(value = "案例视频")
private String caseVideo;
}
...@@ -60,7 +60,10 @@ public class MallGoodsVO { ...@@ -60,7 +60,10 @@ public class MallGoodsVO {
@ApiModelProperty(value = "规格") @ApiModelProperty(value = "规格")
@NotEmpty(message = "规格不能为空", groups = {Update.class, Create.class}) @NotEmpty(message = "规格不能为空", groups = {Update.class, Create.class})
private List<GoodsSpecVO> goodsSpecList; private List<SpecAttrVO> specAttrList;
@ApiModelProperty(value = "价格库存排列组合表信息")
private List<PriceStockVO> priceStock;
@ApiModelProperty(value = "商品详情 富文本") @ApiModelProperty(value = "商品详情 富文本")
private String goodsDetails; private String goodsDetails;
......
package com.mmc.pms.model.mall;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Author LW
* @date 2023/8/8 10:48
* 概要:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class PriceStockVO implements Serializable {
private static final long serialVersionUID = 1011141620995647903L;
@ApiModelProperty(value = "id", example = "1")
private Integer id;
@ApiModelProperty(value = "商品规格", example = "示例:{\"颜色\":\"蓝色\",\"尺寸\":\"1寸\",\"大小\":\"小\"} 或 [\"颜色\":\"蓝色\",\"尺寸\":\"1寸\",\"大小\":\"小\"] 或 你怎么方便怎么来")
private String productSpec;
@ApiModelProperty(value = "销售价格", example = "1")
private BigDecimal salePrice;
@ApiModelProperty(value = "sku图片", example = "https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/35bbd044-7cd7-4c85-ba27-69776e03dbb2.jpg")
private String skuImage;
@ApiModelProperty(value = "渠道价格", example = "1")
private BigDecimal channelPrice;
@ApiModelProperty(value = "库存", example = "10")
private Integer stock;
@ApiModelProperty(value = "sku编号", example = "mmc-da-s-b")
private String skuNo;
}
package com.mmc.pms.model.mall;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @Author LW
* @date 2023/7/24 20:16
* 概要:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class SpecAttrVO {
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "规格名称", example = "规格名称", required = true)
private String specName;
@ApiModelProperty(value = "规格值信息", required = true)
private List<SpecAttrVO> specValuesList;
}
package com.mmc.pms.model.qo;
import com.mmc.pms.common.Page;
import com.mmc.pms.model.group.Freeze;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/7 14:44
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionQO implements Serializable {
private static final long serialVersionUID = -5974353165131012551L;
@ApiModelProperty(value = "关键字")
private String keyword;
@ApiModelProperty(value = "行业id")
private Integer industryTypeId;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
@ApiModelProperty(value = "作业团队id")
private Integer companyInfoId;
@ApiModelProperty(value = "页码", required = true)
@NotNull(message = "页码不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true)
@NotNull(message = "每页显示数不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
package com.mmc.pms.model.qo;
import com.mmc.pms.common.Page;
import com.mmc.pms.model.group.Freeze;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/4 14:28
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class IndustryTypeQO implements Serializable {
private static final long serialVersionUID = 1983281419136483277L;
private Integer id;
@ApiModelProperty(value = "行业类型名称")
private String typeName;
@ApiModelProperty(value = "页码", required = true)
@NotNull(message = "页码不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true)
@NotNull(message = "每页显示数不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
package com.mmc.pms.model.sale.dto; package com.mmc.pms.model.sale.dto;
import com.mmc.pms.model.category.vo.ModeInfoVO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
...@@ -7,6 +8,7 @@ import lombok.NoArgsConstructor; ...@@ -7,6 +8,7 @@ import lombok.NoArgsConstructor;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
...@@ -22,6 +24,6 @@ public class BrandInfoDTO implements Serializable { ...@@ -22,6 +24,6 @@ public class BrandInfoDTO implements Serializable {
private static final long serialVersionUID = 2845503394350034900L; private static final long serialVersionUID = 2845503394350034900L;
private Integer id; private Integer id;
private String brandName; private String brandName;
private List<ModeInfoVO> modeInfoList;
private Date createTime; private Date createTime;
} }
...@@ -2,6 +2,8 @@ package com.mmc.pms.service; ...@@ -2,6 +2,8 @@ package com.mmc.pms.service;
import com.mmc.pms.common.ResultBody; import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.category.qo.ModeInfoQO;
import com.mmc.pms.model.category.vo.ModeInfoVO;
import com.mmc.pms.page.PageResult; import com.mmc.pms.page.PageResult;
/** /**
...@@ -46,4 +48,10 @@ public interface BrandManageService { ...@@ -46,4 +48,10 @@ public interface BrandManageService {
ResultBody editBrandInfo(Integer id, String name); ResultBody editBrandInfo(Integer id, String name);
ResultBody deleteBrandInfo(Integer id); ResultBody deleteBrandInfo(Integer id);
ResultBody addMode(ModeInfoVO param);
PageResult modeList(ModeInfoQO param);
ResultBody editMode(ModeInfoVO param);
} }
package com.mmc.pms.service.category;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.category.vo.ProductTypeVO;
import com.mmc.pms.page.PageResult;
/**
* @Author LW
* @date 2023/8/5 10:43
* 概要:
*/
public interface ProductAttributeService {
/**
* 添加类型
*
* @param param 参数
* @return {@link ResultBody}
*/
ResultBody addType(ProductTypeVO param);
/**
* 编辑类型
*
* @param param 参数
* @return {@link ResultBody}
*/
ResultBody editType(ProductTypeVO param);
/**
* 删除类型
*
* @param id id
* @return {@link ResultBody}
*/
ResultBody removeType(Integer id);
/**
* 类型详情
*
* @param id id
* @return {@link ResultBody}<{@link ProductTypeVO}>
*/
ResultBody<ProductTypeVO> typeDetails(Integer id);
PageResult typeList(Integer pageNo, Integer pageSize);
ResultBody exchange(Integer firstId, Integer secondId);
}
package com.mmc.pms.service.category.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.category.ProductAttributeDao;
import com.mmc.pms.entity.category.ProductTypeDO;
import com.mmc.pms.model.category.vo.ProductTypeVO;
import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.category.ProductAttributeService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
/**
* @Author LW
* @date 2023/8/5 10:44
* 概要:
*/
@Service
public class ProductAttributeServiceImpl implements ProductAttributeService {
@Resource
ProductAttributeDao productAttributeDao;
@Override
public ResultBody addType(ProductTypeVO param) {
int count = productAttributeDao.countTypeByName(param);
if (count > 0) {
return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR);
}
productAttributeDao.addType(param);
return ResultBody.success();
}
@Override
public ResultBody editType(ProductTypeVO param) {
int count = productAttributeDao.countTypeByName(param);
if (count > 0) {
return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR);
}
productAttributeDao.editType(param);
return ResultBody.success();
}
@Override
public ResultBody removeType(Integer id) {
productAttributeDao.removeType(id);
return ResultBody.success();
}
@Override
public ResultBody<ProductTypeVO> typeDetails(Integer id) {
ProductTypeDO productType = productAttributeDao.getType(id);
return ResultBody.success(productType == null ? null : productType.buildProductType());
}
@Override
public PageResult typeList(Integer pageNo, Integer pageSize) {
int count = productAttributeDao.countType();
if (count == 0) {
return PageResult.buildPage(pageNo, pageSize, count);
}
List<ProductTypeDO> productTypeList = productAttributeDao.listType((pageNo - 1) * pageSize, pageSize);
return PageResult.buildPage(pageNo, pageSize, count, productTypeList.stream().map(ProductTypeDO::buildProductType).collect(Collectors.toList()));
}
@Override
@Transactional(rollbackFor = Exception.class)
public ResultBody exchange(Integer firstId, Integer secondId) {
ProductTypeDO firstType = productAttributeDao.getType(firstId);
ProductTypeDO secondType = productAttributeDao.getType(secondId);
int updateCount1 = productAttributeDao.updateProductAttribute(firstId, secondType.getCreateTime());
int updateCount2 = productAttributeDao.updateProductAttribute(secondId, firstType.getCreateTime());
if (updateCount1 == updateCount2) {
return ResultBody.success();
} else {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return ResultBody.error("排序失败");
}
}
}
...@@ -15,6 +15,7 @@ import com.mmc.pms.entity.Categories; ...@@ -15,6 +15,7 @@ import com.mmc.pms.entity.Categories;
import com.mmc.pms.entity.InspComtDO; import com.mmc.pms.entity.InspComtDO;
import com.mmc.pms.entity.ServiceDO; import com.mmc.pms.entity.ServiceDO;
import com.mmc.pms.feign.UserAppApi; import com.mmc.pms.feign.UserAppApi;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.qo.CompanyInfoQO; import com.mmc.pms.model.qo.CompanyInfoQO;
import com.mmc.pms.model.qo.ServiceQO; import com.mmc.pms.model.qo.ServiceQO;
import com.mmc.pms.model.work.dto.ServiceDTO; import com.mmc.pms.model.work.dto.ServiceDTO;
...@@ -84,13 +85,17 @@ public class BackstageTaskServiceImpl implements BackstageTaskService { ...@@ -84,13 +85,17 @@ public class BackstageTaskServiceImpl implements BackstageTaskService {
@Override @Override
public ResultBody<ServiceDTO> queryById(Integer id, HttpServletRequest request) { public ResultBody<ServiceDTO> queryById(Integer id, HttpServletRequest request) {
ServiceDO serviceDO = backstageTaskServiceDao.queryById(id); ServiceDO serviceDO = backstageTaskServiceDao.queryById(id);
String token = // String token =
userAppApi.getCompanyInfoById(serviceDO.getCompanyId(), request.getHeader("token")); // userAppApi.getCompanyInfoById(serviceDO.getCompanyId(), request.getHeader("token"));
JSONObject jsonObject = JSONObject.parseObject(token); // JSONObject jsonObject = JSONObject.parseObject(token);
CompanyInfoDTO companyInfoDTO = // CompanyInfoDTO companyInfoDTO =
JSON.parseObject( // JSON.parseObject(
String.valueOf((JSONObject) jsonObject.get("result")), CompanyInfoDTO.class); // String.valueOf((JSONObject) jsonObject.get("result")), CompanyInfoDTO.class);
String companyName = companyInfoDTO.getCompanyName(); String companyName = null;
ResultBody<CompanyInfoVO> res = userAppApi.getCompanyInfoById(id, request.getHeader("token"));
if (res.getResult() != null) {
companyName = res.getResult().getCompanyName();
}
ServiceDTO serviceDTO = new ServiceDTO(serviceDO, companyName); ServiceDTO serviceDTO = new ServiceDTO(serviceDO, companyName);
Map<Integer, String> categoriesNameMap = Map<Integer, String> categoriesNameMap =
getCategoriesNameByIds( getCategoriesNameByIds(
......
...@@ -5,90 +5,142 @@ import com.mmc.pms.common.ResultEnum; ...@@ -5,90 +5,142 @@ import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.BrandManageDao; import com.mmc.pms.dao.BrandManageDao;
import com.mmc.pms.dao.ProductDao; import com.mmc.pms.dao.ProductDao;
import com.mmc.pms.entity.BrandInfoDO; import com.mmc.pms.entity.BrandInfoDO;
import com.mmc.pms.entity.category.DeviceModeDO;
import com.mmc.pms.model.category.qo.ModeInfoQO;
import com.mmc.pms.model.category.vo.ModeInfoVO;
import com.mmc.pms.model.sale.dto.BrandInfoDTO; import com.mmc.pms.model.sale.dto.BrandInfoDTO;
import com.mmc.pms.page.PageResult; import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.BrandManageService; import com.mmc.pms.service.BrandManageService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
* @Author LW * @Author LW
*
* @date 2023/3/14 13:27 概要: * @date 2023/3/14 13:27 概要:
*/ */
@Service @Service
public class BrandManageServiceImpl implements BrandManageService { public class BrandManageServiceImpl implements BrandManageService {
@Autowired private BrandManageDao brandManageDao; @Autowired
@Resource private ProductDao productDao; private BrandManageDao brandManageDao;
@Resource
private ProductDao productDao;
/** /**
* 添加品牌信息 * 添加品牌信息
* *
* @param brandName 品牌名称 * @param brandName 品牌名称
* @return {@link ResultBody} * @return {@link ResultBody}
*/ */
@Override @Override
public ResultBody addBrandInfo(String brandName) { public ResultBody addBrandInfo(String brandName) {
// 根据品牌名称判断是否存在 // 根据品牌名称判断是否存在
int count = brandManageDao.countBrandInfoByName(null, brandName); int count = brandManageDao.countBrandInfoByName(null, brandName);
if (count > 0) { if (count > 0) {
return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR); return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR);
}
BrandInfoDO brandInfoDO = new BrandInfoDO(brandName);
brandManageDao.insertBrandInfo(brandInfoDO);
return ResultBody.success();
} }
BrandInfoDO brandInfoDO = new BrandInfoDO(brandName);
brandManageDao.insertBrandInfo(brandInfoDO);
return ResultBody.success();
}
/** /**
* 品牌列表信息 * 品牌列表信息
* *
* @return {@link ResultBody} * @return {@link ResultBody}
*/ */
@Override @Override
public PageResult listBrandInfo(Integer pageNo, Integer pageSize) { public PageResult listBrandInfo(Integer pageNo, Integer pageSize) {
int count = brandManageDao.countBrandInfo(); int count = brandManageDao.countBrandInfo();
if (count == 0) { if (count == 0) {
return PageResult.buildPage(pageNo, pageSize, 0); return PageResult.buildPage(pageNo, pageSize, count);
}
int itemIndex = (pageNo - 1) * pageSize;
List<BrandInfoDO> brandInfo = brandManageDao.listBrandInfo(itemIndex, pageSize);
List<Integer> ids = brandInfo.stream().map(BrandInfoDO::getId).collect(Collectors.toList());
List<DeviceModeDO> deviceModeDOList = brandManageDao.listDeviceModeByBrandId(ids);
Map<Integer, List<DeviceModeDO>> map = deviceModeDOList.stream().collect(Collectors.groupingBy(DeviceModeDO::getBrandInfoId));
List<BrandInfoDTO> brandInfoList =
brandInfo.stream().map(BrandInfoDO::buildBrandInfoDTO).collect(Collectors.toList());
brandInfoList = brandInfoList.stream().peek(d -> {
List<DeviceModeDO> deviceModeList = map.get(d.getId());
if (CollectionUtils.isNotEmpty(deviceModeList)) {
d.setModeInfoList(deviceModeList.stream().map(DeviceModeDO::buildModeInfoVO).collect(Collectors.toList()));
}
}).collect(Collectors.toList());
return PageResult.buildPage(pageNo, pageSize, count, brandInfoList);
} }
int itemIndex = (pageNo - 1) * pageSize;
List<BrandInfoDO> brandInfo = brandManageDao.listBrandInfo(itemIndex, pageSize);
List<BrandInfoDTO> brandInfoList =
brandInfo.stream().map(BrandInfoDO::buildBrandInfoDTO).collect(Collectors.toList());
return PageResult.buildPage(pageNo, pageSize, count, brandInfoList);
}
/** /**
* 删除品牌信息 * 删除品牌信息
* *
* @param id id * @param id id
* @return {@link ResultBody} * @return {@link ResultBody}
*/ */
@Override @Override
public ResultBody deleteBrandInfo(Integer id) { public ResultBody deleteBrandInfo(Integer id) {
// 判断该品牌是否绑定产品信息 // 判断该品牌是否绑定产品信息
int count = productDao.countProductSpecByBrandId(id); int count = productDao.countProductSpecByBrandId(id);
if (count > 0) { if (count > 0) {
return ResultBody.error(ResultEnum.BRAND_DELETE_FAIL); return ResultBody.error(ResultEnum.BRAND_DELETE_FAIL);
}
brandManageDao.removeBrandInfoById(id);
return ResultBody.success();
} }
brandManageDao.removeBrandInfoById(id);
return ResultBody.success();
}
@Override @Override
public ResultBody editBrandInfo(Integer id, String brandName) { public ResultBody editBrandInfo(Integer id, String brandName) {
// 根据品牌名称判断是否存在 // 根据品牌名称判断是否存在
int count = brandManageDao.countBrandInfoByName(id, brandName); int count = brandManageDao.countBrandInfoByName(id, brandName);
if (count > 0) { if (count > 0) {
return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR); return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR);
}
BrandInfoDO brandInfoDO = new BrandInfoDO(brandName);
brandInfoDO.setId(id);
brandManageDao.updateBrandInfo(brandInfoDO);
return ResultBody.success();
} }
BrandInfoDO brandInfoDO = new BrandInfoDO(brandName);
brandInfoDO.setId(id); @Override
brandManageDao.updateBrandInfo(brandInfoDO); public ResultBody addMode(ModeInfoVO param) {
return ResultBody.success(); int count = brandManageDao.countModeInfoByName(param);
} if (count > 0) {
return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR);
}
DeviceModeDO modeInfoDO = new DeviceModeDO(param);
brandManageDao.insertModeInfo(modeInfoDO);
return ResultBody.success();
}
@Override
public PageResult modeList(ModeInfoQO param) {
int count = brandManageDao.countModeInfo(param);
if (count == 0) {
return PageResult.buildPage(param.getPageNo(), param.getPageSize(), count);
}
Integer pageNo = param.getPageNo();
param.buildCurrentPage();
List<DeviceModeDO> deviceModeDOList = brandManageDao.listDeviceMode(param);
List<ModeInfoVO> list = deviceModeDOList.stream().map(DeviceModeDO::buildModeInfoVO).collect(Collectors.toList());
return PageResult.buildPage(pageNo, param.getPageSize(), count, list);
}
@Override
public ResultBody editMode(ModeInfoVO param) {
int count = brandManageDao.countModeInfoByName(param);
if (count > 0) {
return ResultBody.error(ResultEnum.GOODS_CATEGORY_NAME_EXIST_ERROR);
}
DeviceModeDO modeInfoDO = new DeviceModeDO(param);
brandManageDao.updateModeInfo(modeInfoDO);
return ResultBody.success();
}
} }
package com.mmc.pms.service.inspection;
import com.mmc.pms.auth.dto.LoginSuccessDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
/**
* @author: zj
* @Date: 2023/8/7 14:31
*/
public interface CompanyInspectionService {
ResultBody insert(CompanyInspectionVO companyInspectionVO);
ResultBody update(CompanyInspectionVO companyInspectionVO);
ResultBody remove(Integer id);
ResultBody<CompanyInspectionDTO> getCompanyInspectionById(Integer id, LoginSuccessDTO loginSuccessDTO);
ResultBody<CompanyInspectionDTO> listCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO);
ResultBody updateRemark(Integer id, String remark);
ResultBody listInspectionPriceUnit();
ResultBody<IndustryTypeDTO> listAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO);
}
package com.mmc.pms.service.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.IndustryTypeQO;
/**
* @author: zj
* @Date: 2023/8/3 18:00
*/
public interface IndustryTypeService {
ResultBody insert(IndustryTypeVO industryTypeVO);
ResultBody update(IndustryTypeVO industryTypeVO);
ResultBody remove(Integer id);
ResultBody listPages(IndustryTypeQO industryTypeQO);
ResultBody<IndustryTypeDTO> listInspectionsByIndustryTypeId(Integer id);
}
package com.mmc.pms.service.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.vo.InspectionVO;
/**
* @author: zj
* @Date: 2023/8/4 16:31
*/
public interface InspectionService {
ResultBody insert(InspectionVO inspectionVO);
ResultBody update(InspectionVO inspectionVO);
ResultBody remove(Integer id);
}
package com.mmc.pms.service.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
/**
* @author: zj
* @Date: 2023/8/5 14:54
*/
public interface InspectionTagService {
ResultBody insert(InspectionTagVO inspectionTagVO);
ResultBody update(InspectionTagVO inspectionTagVO);
ResultBody delete(Integer id);
ResultBody<InspectionTagDTO> listByInspectionId(Integer id);
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.auth.dto.CompanyInfoVO;
import com.mmc.pms.auth.dto.LoginSuccessDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.dao.inspection.CompanyInspectionDao;
import com.mmc.pms.entity.inspection.CompanyInspectionDO;
import com.mmc.pms.enums.CompanyTypeEnums;
import com.mmc.pms.enums.InspectionPriceUnitEnums;
import com.mmc.pms.feign.UserAppApi;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.inspection.CompanyInspectionService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/7 14:31
*/
@Service
public class CompanyInspectionServiceImpl implements CompanyInspectionService {
@Autowired
private CompanyInspectionDao companyInspectionDao;
@Autowired
private UserAppApi userAppApi;
@Override
public ResultBody insert(CompanyInspectionVO companyInspectionVO) {
CompanyInspectionDO companyInspectionDO = new CompanyInspectionDO(companyInspectionVO);
companyInspectionDao.insert(companyInspectionDO);
// 插入图片、视频
if (CollectionUtils.isNotEmpty(companyInspectionVO.getCompanyInspectionFiles())) {
companyInspectionVO.getCompanyInspectionFiles().stream().forEach(i -> i.setCompanyInspectionId(companyInspectionDO.getId()));
companyInspectionDao.batchInsertCompanyInspectionFile(companyInspectionVO.getCompanyInspectionFiles());
}
return ResultBody.success();
}
@Override
public ResultBody update(CompanyInspectionVO companyInspectionVO) {
CompanyInspectionDO companyInspectionDO = new CompanyInspectionDO(companyInspectionVO);
companyInspectionDao.update(companyInspectionDO);
// 修改插入图片、视频
return ResultBody.success();
}
@Override
public ResultBody remove(Integer id) {
companyInspectionDao.remove(id);
return ResultBody.success();
}
@Override
public ResultBody<CompanyInspectionDTO> getCompanyInspectionById(Integer id, LoginSuccessDTO loginSuccessDTO) {
CompanyInspectionDO companyInspectionDO = companyInspectionDao.getCompanyInspectionById(id);
if (companyInspectionDO != null) {
CompanyInspectionDTO companyInspectionDTO = companyInspectionDO.buildCompanyInspectionDTO();
ResultBody<CompanyInfoVO> res = userAppApi.getCompanyInfoById(companyInspectionDO.getCompanyInfoId(), loginSuccessDTO.getToken());
if (res.getResult() != null) {
companyInspectionDTO.setCompanyName(res.getResult().getCompanyName());
}
return ResultBody.success(companyInspectionDTO);
}
return ResultBody.success();
}
@Override
public ResultBody<CompanyInspectionDTO> listCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO) {
if (loginSuccessDTO.getCompanyInfoVO().getCompanyType().equals(CompanyTypeEnums.FRANCHISEE.getType())) {
companyInspectionQO.setCompanyInfoId(loginSuccessDTO.getCompanyInfoVO().getId());
}
int count = companyInspectionDao.countListCompanyInspectionPage(companyInspectionQO);
if (count == 0) {
return ResultBody.success(PageResult.buildPage(companyInspectionQO.getPageNo(), companyInspectionQO.getPageSize(), count));
}
int pageNo = companyInspectionQO.getPageNo();
companyInspectionQO.buildCurrentPage();
List<CompanyInspectionDO> companyInspectionDOS = companyInspectionDao.listCompanyInspectionPage(companyInspectionQO);
List<CompanyInspectionDTO> companyInspectionDTOS = companyInspectionDOS.stream().map(CompanyInspectionDO::buildCompanyInspectionDTO).collect(Collectors.toList());
// 设置单位名称
setCompanyName(companyInspectionDTOS, loginSuccessDTO.getToken());
return ResultBody.success(PageResult.buildPage(pageNo, companyInspectionQO.getPageSize(), count, companyInspectionDTOS));
}
@Override
public ResultBody updateRemark(Integer id, String remark) {
companyInspectionDao.updateRemark(id, remark);
return ResultBody.success();
}
@Override
public ResultBody listInspectionPriceUnit() {
List<Map<String, Object>> list = new ArrayList<>();
for (InspectionPriceUnitEnums inspectionPriceUnitEnums : InspectionPriceUnitEnums.values()) {
Map<String, Object> map = new HashMap<>();
map.put("id", inspectionPriceUnitEnums.getId());
map.put("unitName", inspectionPriceUnitEnums.getUnitName());
list.add(map);
}
return ResultBody.success(list);
}
@Override
public ResultBody<IndustryTypeDTO> listAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO) {
int count = companyInspectionDao.countListAPPCompanyInspectionPage(companyInspectionQO);
if (count == 0) {
return ResultBody.success(PageResult.buildPage(companyInspectionQO.getPageNo(), companyInspectionQO.getPageSize(), count));
}
int pageNo = companyInspectionQO.getPageNo();
companyInspectionQO.buildCurrentPage();
List<CompanyInspectionDO> companyInspectionDOS = companyInspectionDao.listAPPCompanyInspectionPage(companyInspectionQO);
List<CompanyInspectionDTO> companyInspectionDTOS = companyInspectionDOS.stream().map(CompanyInspectionDO::buildCompanyInspectionDTO).collect(Collectors.toList());
setCompanyName(companyInspectionDTOS, loginSuccessDTO.getToken());
return ResultBody.success(PageResult.buildPage(pageNo, companyInspectionQO.getPageSize(), count, companyInspectionDTOS));
}
public void setCompanyName(List<CompanyInspectionDTO> companyInspectionDTOS, String token){
// 单位名称查询
List<Integer> companyInfoIds = companyInspectionDTOS.stream().map(i -> i.getCompanyInfoId()).collect(Collectors.toList());
List<CompanyInfoVO> companyInfoVOS = userAppApi.feignListCompanyInfoByIds(companyInfoIds, token);
if (CollectionUtils.isNotEmpty(companyInfoVOS)){
Map<Integer, String> collect = companyInfoVOS.stream().collect(Collectors.toMap(CompanyInfoVO::getId, CompanyInfoVO::getCompanyName));
companyInspectionDTOS.stream().forEach(i -> i.setCompanyName(collect.get(i.getCompanyInfoId())));
}
}
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.inspection.IndustryTypeDao;
import com.mmc.pms.entity.inspection.IndustryTypeDO;
import com.mmc.pms.entity.inspection.InspectionDO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.dto.InspectionDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.IndustryTypeQO;
import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.inspection.IndustryTypeService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/3 18:01
*/
@Service
public class IndustryTypeServiceImpl implements IndustryTypeService {
@Autowired
private IndustryTypeDao industryTypeDao;
@Override
public ResultBody insert(IndustryTypeVO industryTypeVO) {
int count = industryTypeDao.countSameName(industryTypeVO.getId(), industryTypeVO.getTypeName());
if (count > 0) {
return ResultBody.error(ResultEnum.INDUSTRY_NAME_CREATE_ERROR);
}
IndustryTypeDO industryTypeDO = new IndustryTypeDO(industryTypeVO);
industryTypeDao.insert(industryTypeDO);
return ResultBody.success();
}
@Override
public ResultBody update(IndustryTypeVO industryTypeVO) {
int count = industryTypeDao.countSameName(industryTypeVO.getId(), industryTypeVO.getTypeName());
if (count > 0) {
return ResultBody.error(ResultEnum.INDUSTRY_NAME_CREATE_ERROR);
}
IndustryTypeDO industryTypeDO = new IndustryTypeDO(industryTypeVO);
industryTypeDao.update(industryTypeDO);
return ResultBody.success();
}
@Override
public ResultBody remove(Integer id) {
// 有绑定则不能删除
industryTypeDao.remove(id);
return ResultBody.success();
}
@Override
public ResultBody listPages(IndustryTypeQO industryTypeQO) {
int count = industryTypeDao.countListPages(industryTypeQO);
if (count == 0) {
return ResultBody.success(PageResult.buildPage(industryTypeQO.getPageNo(), industryTypeQO.getPageSize(), count));
}
int pageNo = industryTypeQO.getPageNo();
industryTypeQO.buildCurrentPage();
List<IndustryTypeDO> industryTypeDOS = industryTypeDao.listPages(industryTypeQO);
List<IndustryTypeDTO> pageList = industryTypeDOS.stream().map(IndustryTypeDO::buildIndustryTypeDTO).collect(Collectors.toList());
return ResultBody.success(PageResult.buildPage(pageNo, industryTypeQO.getPageSize(), count, pageList));
}
@Override
public ResultBody<IndustryTypeDTO> listInspectionsByIndustryTypeId(Integer id) {
List<InspectionDO> industryTypeDOS = industryTypeDao.listInspectionsByIndustryTypeIdId(id);
if (CollectionUtils.isNotEmpty(industryTypeDOS)) {
List<InspectionDTO> inspectionDTOS = industryTypeDOS.stream().map(InspectionDO::buildInspectionDTO).collect(Collectors.toList());
return ResultBody.success(inspectionDTOS);
}
return ResultBody.success();
}
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.inspection.InspectionDao;
import com.mmc.pms.entity.inspection.InspectionDO;
import com.mmc.pms.model.inspection.vo.InspectionVO;
import com.mmc.pms.service.inspection.InspectionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author: zj
* @Date: 2023/8/4 16:31
*/
@Service
public class InspectionServiceImpl implements InspectionService {
@Autowired
private InspectionDao inspectionDao;
@Override
public ResultBody insert(InspectionVO inspectionVO) {
InspectionDO inspectionDO = new InspectionDO(inspectionVO);
int count = inspectionDao.countSameName(inspectionVO.getId(), inspectionVO.getInspectionName());
if (count > 0) {
return ResultBody.error(ResultEnum.INSPECTION_NAME_CREATE_ERROR);
}
inspectionDao.insert(inspectionDO);
return ResultBody.success();
}
@Override
public ResultBody update(InspectionVO inspectionVO) {
InspectionDO inspectionDO = new InspectionDO(inspectionVO);
int count = inspectionDao.countSameName(inspectionVO.getId(), inspectionVO.getInspectionName());
if (count > 0) {
return ResultBody.error(ResultEnum.INSPECTION_NAME_CREATE_ERROR);
}
inspectionDao.update(inspectionDO);
return ResultBody.success();
}
@Override
public ResultBody remove(Integer id) {
inspectionDao.remove(id);
return ResultBody.success();
}
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.inspection.InspectionTagDao;
import com.mmc.pms.entity.inspection.InspectionTagDO;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
import com.mmc.pms.service.inspection.InspectionTagService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/5 14:54
*/
@Service
public class InspectionTagServiceImpl implements InspectionTagService {
@Autowired
private InspectionTagDao inspectionTagDao;
@Override
public ResultBody insert(InspectionTagVO inspectionTagVO) {
int count = inspectionTagDao.countSameName(inspectionTagVO.getTagName());
if (count > 0) {
return ResultBody.error(ResultEnum.NAME_DUPLICATION_ERROR);
}
InspectionTagDO inspectionTagDO = new InspectionTagDO(inspectionTagVO);
inspectionTagDao.insert(inspectionTagDO);
return ResultBody.success();
}
@Override
public ResultBody update(InspectionTagVO inspectionTagVO) {
int count = inspectionTagDao.countSameName(inspectionTagVO.getTagName());
if (count > 0) {
return ResultBody.error(ResultEnum.NAME_DUPLICATION_ERROR);
}
InspectionTagDO inspectionTagDO = new InspectionTagDO(inspectionTagVO);
inspectionTagDao.update(inspectionTagDO);
return ResultBody.success();
}
@Override
public ResultBody delete(Integer id) {
inspectionTagDao.delete(id);
return ResultBody.success();
}
@Override
public ResultBody<InspectionTagDTO> listByInspectionId(Integer id) {
List<InspectionTagDO> inspectionTagDOS = inspectionTagDao.listByInspectionId(id);
if (CollectionUtils.isNotEmpty(inspectionTagDOS)){
List<InspectionTagDTO> inspectionTagDTOS = inspectionTagDOS.stream().map(InspectionTagDO::buildInspectionTagDTO).collect(Collectors.toList());
return ResultBody.success(inspectionTagDTOS);
}
return ResultBody.success();
}
}
package com.mmc.pms.service.lease;
/**
* @Author LW
* @date 2023/8/4 10:37
* 概要:
*/
public interface LeaseGoodsService {
}
package com.mmc.pms.service.lease.impl;
import com.mmc.pms.service.lease.LeaseGoodsService;
import org.springframework.stereotype.Service;
/**
* @Author LW
* @date 2023/8/4 10:37
* 概要:
*/
@Service
public class LeaseGoodsServiceImpl implements LeaseGoodsService {
}
...@@ -17,7 +17,7 @@ public interface MallGoodsService { ...@@ -17,7 +17,7 @@ public interface MallGoodsService {
ResultBody editMallGoods(MallGoodsVO mallGoodsVO, Integer userAccountId); ResultBody editMallGoods(MallGoodsVO mallGoodsVO, Integer userAccountId);
ResultBody getSkuUnit(); // ResultBody getSkuUnit();
PageResult listPageGoodsInfo(MallGoodsInfoQO param, LoginSuccessDTO loginSuccessDTO); PageResult listPageGoodsInfo(MallGoodsInfoQO param, LoginSuccessDTO loginSuccessDTO);
......
...@@ -8,6 +8,14 @@ ...@@ -8,6 +8,14 @@
values (#{brandName}); values (#{brandName});
</insert> </insert>
<insert id="insertModeInfo">
insert into device_mode (brand_info_id,
product_type_id,
model_name,
tag)
values (#{brandInfoId}, #{productTypeId}, #{modelName}, #{tag})
</insert>
<update id="removeBrandInfoById"> <update id="removeBrandInfoById">
update brand_info update brand_info
set is_delete = 1 set is_delete = 1
...@@ -18,6 +26,14 @@ ...@@ -18,6 +26,14 @@
set brand_name = #{brandName} set brand_name = #{brandName}
where id = #{id} where id = #{id}
</update> </update>
<update id="updateModeInfo">
update device_mode
set brand_info_id = #{brandInfoId},
product_type_id = #{productTypeId},
model_name = #{modelName},
tag = #{tag}
where id = #{id}
</update>
<select id="countBrandInfoByName" resultType="java.lang.Integer"> <select id="countBrandInfoByName" resultType="java.lang.Integer">
select count(*) select count(*)
...@@ -48,4 +64,54 @@ ...@@ -48,4 +64,54 @@
from brand_info from brand_info
where is_delete = 0 where is_delete = 0
</select> </select>
<select id="countModeInfoByName" resultType="java.lang.Integer">
select count(*)
from device_mode
where model_name = #{modeName}
<if test="id!=null and id!=''">
and id <![CDATA[<>]]> #{id}
</if>
</select>
<select id="countModeInfo" resultType="java.lang.Integer">
select count(*)
from device_mode
<where>
<if test="brandInfoId != null">
brand_info_id = #{brandInfoId}
</if>
<if test="productTypeId != null">
and product_type_id = #{productTypeId}
</if>
</where>
</select>
<select id="listDeviceMode" resultType="com.mmc.pms.entity.category.DeviceModeDO">
select id,
brand_info_id,
product_type_id,
model_name,
tag
from device_mode
<where>
<if test="brandInfoId != null">
brand_info_id = #{brandInfoId}
</if>
<if test="productTypeId != null">
and product_type_id = #{productTypeId}
</if>
</where>
order by create_time desc
limit #{pageNo},#{pageSize}
</select>
<select id="listDeviceModeByBrandId" resultType="com.mmc.pms.entity.category.DeviceModeDO">
select id,
brand_info_id,
product_type_id,
model_name,
tag
from device_mode
where brand_info_id in
(<foreach collection="list" separator="," index="index" item="item">
#{item}
</foreach>)
</select>
</mapper> </mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.category.ProductAttributeDao">
<insert id="addType">
insert into product_type(`name`, url)
values (#{name}, #{url})
</insert>
<update id="editType">
update product_type
<set>
<if test="name != null">
name = #{name},
</if>
<if test="url != null">
url = #{url}
</if>
</set>
where id = #{id}
</update>
<update id="updateProductAttribute">
update product_type
set create_time = #{createTime}
where id = #{id}
</update>
<delete id="removeType">
delete
from product_type
where id = #{id}
</delete>
<select id="countTypeByName" resultType="java.lang.Integer">
select count(*)
from product_type
where `name` = #{name}
<if test="id != null">
and id <![CDATA[<>]]> #{id}
</if>
</select>
<select id="getType" resultType="com.mmc.pms.entity.category.ProductTypeDO">
select id, `name`, url, create_time
from product_type
where id = #{id}
</select>
<select id="countType" resultType="java.lang.Integer">
select count(*)
from product_type
</select>
<select id="listType" resultType="com.mmc.pms.entity.category.ProductTypeDO">
select id, `name`, url
from product_type
order by create_time desc
limit #{pageNo}, #{pageSize}
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.CompanyInspectionDao">
<resultMap id="companyInspectionResultMap" type="com.mmc.pms.entity.inspection.CompanyInspectionDO">
<id property="id" column="id"/>
<result property="companyInfoId" column="company_info_id"/>
<result property="serviceArea" column="service_area"/>
<result property="inspectionId" column="inspection_id"/>
<result property="inspectionTagId" column="inspection_tag_id"/>
<result property="price" column="price"/>
<result property="priceRemark" column="price_remark"/>
<result property="inspectionPriceUnitId" column="inspection_price_unit_id"/>
<result property="detailPage" column="detail_page"/>
<result property="saleState" column="sale_state"/>
<result property="remark" column="remark"/>
<result property="createTime" column="create_time"/>
<association property="industryTypeDO" javaType="com.mmc.pms.entity.inspection.IndustryTypeDO">
<id property="id" column="industry_type_id"/>
<result property="typeName" column="type_name"/>
</association>
<association property="inspectionDO" javaType="com.mmc.pms.entity.inspection.InspectionDO">
<id property="id" column="inspection_id"/>
<result property="inspectionNo" column="inspection_no"/>
<result property="inspectionName" column="inspection_name"/>
</association>
<association property="inspectionTagDO" javaType="com.mmc.pms.entity.inspection.InspectionTagDO">
<id property="id" column="inspection_id"/>
<result property="tagName" column="tag_name"/>
<result property="inspectionId" column="inspection_id"/>
</association>
<collection property="inspectionFileDOS" ofType="com.mmc.pms.entity.inspection.CompanyInspectionFileDO">
<id property="id" column="company_inspection_file_id"/>
<result property="fileType" column="file_type"/>
<result property="first" column="first"/>
<result property="companyInspectionId" column="id"/>
<result property="fileUrl" column="file_url"/>
</collection>
</resultMap>
<insert id="insert" keyProperty="id" useGeneratedKeys="true" parameterType="com.mmc.pms.entity.inspection.CompanyInspectionDO">
insert into company_inspection(company_info_id, service_area, inspection_id, inspection_tag_id, price, price_remark, inspection_price_unit_id,
detail_page, sale_state, remark, create_time)
values (#{companyInfoId}, #{serviceArea}, #{inspectionId}, #{inspectionTagId}, #{price}, #{priceRemark}, #{inspectionPriceUnitId},
#{detailPage}, #{saleState}, #{remark}, NOW())
</insert>
<insert id="batchInsertCompanyInspectionFile">
insert into company_inspection_file(file_type, `first`, company_inspection_id, file_url, create_time) values
<foreach collection="list" item="item" separator=",">
(#{item.fileType}, #{item.first}, #{item.companyInspectionId}, #{item.fileUrl}, NOW())
</foreach>
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.CompanyInspectionDO">
update company_inspection
<set>
<if test="companyInfoId">
company_info_id = #{companyInfoId},
</if>
<if test="serviceArea">
service_area = #{serviceArea},
</if>
<if test="inspectionId">
inspection_id = #{inspectionId},
</if>
<if test="inspectionTagId">
inspection_tag_id = #{inspectionTagId},
</if>
<if test="price">
price = #{price},
</if>
<if test="priceRemark">
price_remark = #{priceRemark},
</if>
<if test="inspectionPriceUnitId">
inspection_price_unit_id = #{inspectionPriceUnitId},
</if>
<if test="detailPage">
detail_page = #{detailPage},
</if>
<if test="saleState">
sale_state = #{saleState},
</if>
<if test="remark">
remark = #{remark}
</if>
</set>
where id = #{id}
</update>
<update id="remove">
update company_inspection set is_deleted = 1 where id = #{id}
</update>
<update id="updateRemark">
update company_inspection set remark = #{remark} where id = #{id}
</update>
<select id="getCompanyInspectionById" resultMap="companyInspectionResultMap">
select cins.id, cins.company_info_id, cins.service_area, cins.inspection_id, cins.inspection_tag_id, cins.price,
cins.price_remark, cins.inspection_price_unit_id,cins.detail_page, cins.sale_state, cins.remark, cins.create_time,
it.id as industry_type_id, it.type_name,
ins.id as inspection_id, ins.inspection_no, ins.inspection_name,
itag.id as inspection_tag_id, itag.tag_name,
cif.id as company_inspection_file_id, cif.file_type, cif.`first`, cif.file_url
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
INNER JOIN inspection_tag itag ON itag.inspection_id = ins.id
INNER JOIN company_inspection_file cif ON cif.company_inspection_id = cins.id
where cins.id = #{id} and cins.is_deleted = 0
</select>
<select id="countListCompanyInspectionPage" resultType="java.lang.Integer" parameterType="com.mmc.pms.model.qo.CompanyInspectionQO">
select count(*)
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
where cins.is_deleted = 0
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
<select id="listCompanyInspectionPage" resultMap="companyInspectionResultMap" parameterType="com.mmc.pms.model.qo.CompanyInspectionQO">
select cins.id, cins.company_info_id, cins.service_area, cins.inspection_id, cins.inspection_tag_id, cins.price,
cins.price_remark, cins.inspection_price_unit_id,cins.detail_page, cins.sale_state, cins.remark, cins.create_time,
it.id as industry_type_id, it.type_name,
ins.id as inspection_id, ins.inspection_no, ins.inspection_name,
itag.id as inspection_tag_id, itag.tag_name,
cif.id as company_inspection_file_id, cif.file_type, cif.`first`, cif.file_url
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
INNER JOIN inspection_tag itag ON itag.inspection_id = ins.id
INNER JOIN company_inspection_file cif ON cif.company_inspection_id = cins.id
where cins.is_deleted = 0
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
<select id="countListAPPCompanyInspectionPage" resultType="java.lang.Integer">
select count(*)
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
where cins.is_deleted = 0 and cins.sale_state = 1
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="inspectionId != null">
and cins.inspection_id = #{inspectionId}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
<select id="listAPPCompanyInspectionPage" resultMap="companyInspectionResultMap">
select cins.id, cins.company_info_id, cins.service_area, cins.inspection_id, cins.inspection_tag_id, cins.price,
cins.price_remark, cins.inspection_price_unit_id,cins.detail_page, cins.sale_state, cins.remark, cins.create_time,
it.id as industry_type_id, it.type_name,
ins.id as inspection_id, ins.inspection_no, ins.inspection_name,
itag.id as inspection_tag_id, itag.tag_name,
cif.id as company_inspection_file_id, cif.file_type, cif.`first`, cif.file_url
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
INNER JOIN inspection_tag itag ON itag.inspection_id = ins.id
INNER JOIN company_inspection_file cif ON cif.company_inspection_id = cins.id
where cins.is_deleted = 0 and cins.sale_state = 1
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="inspectionId != null">
and cins.inspection_id = #{inspectionId}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.IndustryTypeDao">
<resultMap id="industryTypeResMap" type="com.mmc.pms.entity.inspection.IndustryTypeDO">
<id property="id" column="id"/>
<result property="typeName" column="type_name"/>
<result property="typeImg" column="type_img"/>
<result property="description" column="description"/>
<result property="saleState" column="sale_state"/>
<result property="createTime" column="create_time"/>
<collection property="inspectionDOS" javaType="java.util.ArrayList"
select="listInspectionsByIndustryTypeIdId"
ofType="com.mmc.pms.entity.inspection.InspectionDO" column="{industryTypeId=id}">
</collection>
</resultMap>
<select id="listInspectionsByIndustryTypeIdId" resultType="com.mmc.pms.entity.inspection.InspectionDO">
select ins.id , ins.inspection_no, ins.inspection_name, ins.industry_type_id, ins.inspection_img,
ins.inspection_description, ins.sale_state as ins_sale_state, ins.case_img, ins.case_video
from inspection ins
where ins.is_deleted = 0 and ins.industry_type_id = #{industryTypeId} order by ins.id desc
</select>
<insert id="insert" parameterType="com.mmc.pms.entity.inspection.IndustryTypeDO" keyProperty="id" useGeneratedKeys="true">
insert into industry_type(type_name, type_img, description, sale_state, create_time)
values(#{typeName}, #{typeImg}, #{description}, #{saleState}, NOW())
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.IndustryTypeDO" >
update industry_type
<set>
<if test="typeName != null">
type_name = #{typeName},
</if>
<if test="typeImg != null">
type_img = #{typeImg},
</if>
<if test="description != null">
description = #{description},
</if>
<if test="saleState != null">
sale_state = #{saleState}
</if>
</set>
where id = #{id}
</update>
<update id="remove">
update industry_type set is_deleted = 1 where id = #{id}
</update>
<select id="countSameName" resultType="java.lang.Integer">
select count(*) from industry_type it where it.is_deleted = 0
<if test="id != null">
and it.id != #{id}
</if>
<if test="typeName != null">
and it.type_name = #{typeName}
</if>
</select>
<select id="countListPages" resultType="java.lang.Integer"
parameterType="com.mmc.pms.model.qo.IndustryTypeQO">
select count(*) from industry_type it
where it.is_deleted = 0
<if test="id != null">
and it.id = #{id}
</if>
<if test="typeName != null">
and it.type_name like concat('%',#{typeName},'%')
</if>
</select>
<select id="listPages" resultMap="industryTypeResMap"
parameterType="com.mmc.pms.model.qo.IndustryTypeQO">
select it.id, it.type_name, it.type_img, it.description, it.sale_state, it.is_deleted, it.create_time
from industry_type it
where it.is_deleted = 0
<if test="id != null">
and it.id = #{id}
</if>
<if test="typeName != null">
and it.type_name like concat('%',#{typeName},'%')
</if>
order by it.id DESC
limit #{pageNo},#{pageSize}
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.InspectionDao">
<insert id="insert" parameterType="com.mmc.pms.entity.inspection.InspectionDO" keyProperty="id" useGeneratedKeys="true">
insert into inspection(inspection_no, inspection_name, industry_type_id, inspection_img, inspection_description, sale_state, case_img, case_video, create_time)
values(#{inspectionNo}, #{inspectionName}, #{industryTypeId}, #{inspectionImg}, #{inspectionDescription}, #{saleState}, #{caseImg}, #{caseVideo}, NOW())
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.InspectionDO">
update inspection
<set>
<if test="inspectionNo != null">
inspection_no = #{inspectionNo},
</if>
<if test="inspectionName != null">
inspection_name = #{inspectionName},
</if>
<if test="industryTypeId != null">
industry_type_id = #{industryTypeId},
</if>
<if test="inspectionImg != null">
inspection_img = #{inspectionImg},
</if>
<if test="inspectionDescription != null">
inspection_description = #{inspectionDescription},
</if>
<if test="saleState != null">
sale_state = #{saleState},
</if>
<if test="caseImg != null">
case_img = #{caseImg},
</if>
<if test="caseVideo != null">
case_video = #{caseVideo}
</if>
</set>
where id = #{id}
</update>
<update id="remove">
update inspection set is_deleted = 1 where id = #{id}
</update>
<select id="countSameName" resultType="java.lang.Integer">
select count(*) from inspection
<where>
inspection_name = #{inspectionName} and is_deleted = 0
<if test="id != null">
and id != #{id}
</if>
</where>
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.InspectionTagDao">
<insert id="insert" parameterType="com.mmc.pms.entity.inspection.InspectionTagDO" useGeneratedKeys="true"
keyProperty="id">
insert into inspection_tag(tag_name, inspection_id, create_time)
values (#{tagName}, #{inspectionId}, NOW())
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.InspectionTagDO">
update inspection_tag set tag_name = #{tagName} where id = #{id}
</update>
<delete id="delete">
delete from inspection_tag where id = #{id}
</delete>
<select id="countSameName" resultType="java.lang.Integer">
select count(*) from inspection_tag
where tag_name = #{tagName}
<if test="id != null">
and id != #{id}
</if>
</select>
<select id="listByInspectionId" resultType="com.mmc.pms.entity.inspection.InspectionTagDO">
select id, tag_name, inspection_id from inspection_tag where inspection_id = #{inspectionId}
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.lease.LeaseGoodsDao">
</mapper>
\ No newline at end of file
...@@ -19,30 +19,7 @@ ...@@ -19,30 +19,7 @@
values ( #{goodsNo}, #{tradeName}, #{description}, #{categoryPrimaryId}, #{categorySubId} values ( #{goodsNo}, #{tradeName}, #{description}, #{categoryPrimaryId}, #{categorySubId}
, #{shelfStatus}, #{goodsLabel}, #{labelShow}, #{goodsDetails}, #{userAccountId}, #{sort}) , #{shelfStatus}, #{goodsLabel}, #{labelShow}, #{goodsDetails}, #{userAccountId}, #{sort})
</insert> </insert>
<insert id="insertGoodsSpec" parameterType="com.mmc.pms.entity.mall.GoodsSpecDO"
keyProperty="id" useGeneratedKeys="true">
insert into goods_spec (mall_goods_id,
spec_name,
choose_type,
must,
sku_unit_id)
values (#{mallGoodsId}, #{specName}, #{chooseType}, #{must}, #{skuUnitId})
</insert>
<insert id="batchInsertSpecValues" parameterType="list">
insert into goods_spec_values (goods_spec_id,
spec_value_name,
part_no,
spec_value_image,
show_price,
stock,
sale_price,
channel_price)
values
<foreach collection="list" item="item" separator=",">
(#{item.goodsSpecId},#{item.specValueName},#{item.partNo},#{item.specValueImage}
,#{item.showPrice},#{item.stock},#{item.salePrice},#{item.channelPrice})
</foreach>
</insert>
<insert id="batchInsertMallGoodsResources"> <insert id="batchInsertMallGoodsResources">
insert into mall_goods_resources (mall_goods_id, insert into mall_goods_resources (mall_goods_id,
url, url,
...@@ -53,6 +30,34 @@ ...@@ -53,6 +30,34 @@
(#{item.mallGoodsId},#{item.url},#{item.type}) (#{item.mallGoodsId},#{item.url},#{item.type})
</foreach> </foreach>
</insert> </insert>
<insert id="batchInsertSpecAttr">
insert into spec_attr_value (spec_attr_id,
spec_value_name
)
values
<foreach collection="list" item="item" separator=",">
(#{item.specAttrId},#{item.specValueName})
</foreach>
</insert>
<insert id="batchInsertPriceStock">
insert into price_stock (mall_goods_id,
product_spec,
sale_price,
sku_image,
channel_price,
stock,
sku_no)
values
<foreach collection="list" item="item" separator=",">
(#{item.mallGoodsId},#{item.productSpec},#{item.salePrice},#{item.skuImage},#{item.channelPrice},#{item.stock},#{item.skuNo})
</foreach>
</insert>
<insert id="insertSpecAttr" useGeneratedKeys="true" keyProperty="id"
parameterType="com.mmc.pms.entity.mall.SpecAttrDO">
insert into spec_attr (mall_goods_id,
spec_name)
values (#{mallGoodsId}, #{specName})
</insert>
<update id="updateMallGoods"> <update id="updateMallGoods">
UPDATE mall_goods UPDATE mall_goods
SET trade_name = #{mallGoodsDO.tradeName}, SET trade_name = #{mallGoodsDO.tradeName},
...@@ -65,26 +70,6 @@ ...@@ -65,26 +70,6 @@
goods_details = #{mallGoodsDO.goodsDetails} goods_details = #{mallGoodsDO.goodsDetails}
WHERE id = #{mallGoodsDO.id} WHERE id = #{mallGoodsDO.id}
</update> </update>
<update id="updateGoodsSpec">
update goods_spec
set spec_name = #{specName},
choose_type = #{chooseType},
must = #{must},
sku_unit_id = #{skuUnitId}
where id = #{id}
</update>
<update id="updateGoodsSpecValue">
update goods_spec_values
set goods_spec_id = #{goodsSpecId},
spec_value_name = #{specValueName},
part_no =#{partNo},
spec_value_image = #{specValueImage},
show_price = #{showPrice},
stock = #{stock},
sale_price = #{salePrice},
channel_price =#{channelPrice}
where id = #{id}
</update>
<update id="updateMallGoodsSort"> <update id="updateMallGoodsSort">
update mall_goods update mall_goods
set sort = #{sort} set sort = #{sort}
...@@ -105,23 +90,38 @@ ...@@ -105,23 +90,38 @@
set is_deleted = 1 set is_deleted = 1
where user_account_id = #{id} where user_account_id = #{id}
</update> </update>
<update id="updateSpecAttr">
update spec_attr
set spec_name = #{specName}
where id = #{id}
</update>
<update id="updateSpecAttrValue">
update spec_attr_value
set spec_value_name = #{specName}
where id = #{id}
</update>
<delete id="deleteMallGoodsResources"> <delete id="deleteMallGoodsResources">
delete delete
from mall_goods_resources from mall_goods_resources
where mall_goods_id = #{id} where mall_goods_id = #{id}
</delete> </delete>
<delete id="deleteGoodsSpec"> <delete id="deleteMallPriceStock">
delete delete
from goods_spec from price_stock
where mall_goods_id = #{id}
</delete>
<delete id="deleteSpecAttr">
delete
from spec_attr
<where> <where>
<foreach collection="list" open="id in (" close=")" item="item" separator=","> <foreach collection="list" open="id in (" close=")" item="item" separator=",">
#{item} #{item}
</foreach> </foreach>
</where> </where>
</delete> </delete>
<delete id="deleteGoodsSpecValues"> <delete id="deleteSpecAttrValue">
delete delete
from goods_spec_values from spec_attr_value
<where> <where>
<foreach collection="list" open="id in (" close=")" item="item" separator=","> <foreach collection="list" open="id in (" close=")" item="item" separator=",">
#{item} #{item}
...@@ -155,7 +155,8 @@ ...@@ -155,7 +155,8 @@
label_show, label_show,
goods_details, goods_details,
user_account_id, user_account_id,
sort sort,
create_time
FROM mall_goods FROM mall_goods
WHERE id = #{id} WHERE id = #{id}
and is_deleted = 0 and is_deleted = 0
...@@ -168,40 +169,7 @@ ...@@ -168,40 +169,7 @@
from mall_goods_resources from mall_goods_resources
where mall_goods_id = #{id} where mall_goods_id = #{id}
</select> </select>
<select id="getMallGoodsSpec" resultType="com.mmc.pms.entity.mall.GoodsSpecDO">
select id,
mall_goods_id,
spec_name,
choose_type,
must,
sku_unit_id
from goods_spec
where mall_goods_id = #{id}
</select>
<select id="getMallGoodsSpecValues" resultType="com.mmc.pms.entity.mall.GoodsSpecValuesDO">
select id,
goods_spec_id,
spec_value_name,
part_no,
spec_value_image,
show_price,
stock,
sale_price,
channel_price
from goods_spec_values
<where>
<foreach collection="list" separator="," item="item" open="goods_spec_id in (" close=")">
#{item}
</foreach>
</where>
</select>
<select id="getSkuUnit" resultType="com.mmc.pms.entity.SkuUnitDO">
SELECT id,
unit_name unitName,
create_time createTime
FROM sku_unit
WHERE is_deleted = 0
</select>
<select id="countListMallGoods" resultType="java.lang.Integer"> <select id="countListMallGoods" resultType="java.lang.Integer">
SELECT SELECT
count(*) count(*)
...@@ -259,4 +227,34 @@ ...@@ -259,4 +227,34 @@
mg.shelf_status DESC , mg.sort DESC,mg.create_time DESC mg.shelf_status DESC , mg.sort DESC,mg.create_time DESC
limit #{pageNo},#{pageSize} limit #{pageNo},#{pageSize}
</select> </select>
<select id="listSpecAttr" resultType="com.mmc.pms.entity.mall.SpecAttrDO">
SELECT id, spec_name, mall_goods_id, create_time
FROM spec_attr
where mall_goods_id = #{id}
</select>
<select id="listPriceStock" resultType="com.mmc.pms.entity.mall.PriceStockDO">
SELECT id,
mall_goods_id,
product_spec,
sale_price,
sku_image,
channel_price,
stock,
sku_no,
create_time
FROM price_stock
WHERE mall_goods_id = #{id}
</select>
<select id="listSpecAttrValue" resultType="com.mmc.pms.entity.mall.SpecAttrValueDO">
SELECT id,
spec_attr_id,
spec_value_name,
create_time
FROM spec_attr_value
<where>
<foreach collection="list" separator="," open="spec_attr_id in (" close=")" item="item">
#{item}
</foreach>
</where>
</select>
</mapper> </mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论