server/company/src/main/java/com/doumee/api/BaseController.java
@@ -4,6 +4,12 @@ import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; /** * Controlleråºç±» * @author Eva.Caesar Liu @@ -21,4 +27,34 @@ return (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); } /** * è·åIDéå * * @param ids 使ç¨","éå¼çå¤ä¸ªID * @return List<Integer> */ protected List<Integer> getIdList (String ids) { String [] idArray = ids.split(","); List<Integer> idList = new ArrayList<>(); for (String id : idArray) { idList.add(Integer.valueOf(id)); } return idList; } /** * è·åæä»¶åèæµ * * @param is è¾å ¥æµ * @return ByteArrayOutputStream */ protected ByteArrayOutputStream getOutputStream (InputStream is) throws IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] bs = new byte[is.available()]; int len; while ((len = is.read(bs)) != -1) { baos.write(bs, 0, len); } return baos; } } server/platform/src/main/java/com/doumee/api/BaseController.java
@@ -5,6 +5,12 @@ import org.apache.shiro.SecurityUtils; import com.doumee.core.model.ApiResponse; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; /** * Controlleråºç±» * @author Eva.Caesar Liu @@ -22,4 +28,35 @@ return (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); } /** * è·åIDéå * * @param ids 使ç¨","éå¼çå¤ä¸ªID * @return List<Integer> */ protected List<Integer> getIdList (String ids) { String [] idArray = ids.split(","); List<Integer> idList = new ArrayList<>(); for (String id : idArray) { idList.add(Integer.valueOf(id)); } return idList; } /** * è·åæä»¶åèæµ * * @param is è¾å ¥æµ * @return ByteArrayOutputStream */ protected ByteArrayOutputStream getOutputStream (InputStream is) throws IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] bs = new byte[is.available()]; int len; while ((len = is.read(bs)) != -1) { baos.write(bs, 0, len); } return baos; } } server/platform/src/main/java/com/doumee/api/business/BaseCategoryController.java
@@ -7,6 +7,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.model.BaseCategory; import com.doumee.dao.business.model.dto.BaseCategoryRequest; import com.doumee.service.business.BaseCategoryService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -34,7 +35,7 @@ @ApiOperation("æ°å»º") @PostMapping("/create") @RequiresPermissions("business:basecategory:create") public ApiResponse create(@RequestBody BaseCategory baseCategory) { public ApiResponse create(@RequestBody BaseCategoryRequest baseCategory) { return ApiResponse.success(baseCategoryService.create(baseCategory)); } server/platform/src/main/java/com/doumee/api/business/CompanyController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,74 @@ package com.doumee.api.business; import com.doumee.api.BaseController; import com.doumee.core.annotation.pr.PreventRepeat; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Company; import com.doumee.service.business.CompanyService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; /** * @author AA * @since 2023/09/08 10:27 */ @Api(tags = "ç³»ç»-ä¼ä¸ä¿¡æ¯è¡¨") @RestController @RequestMapping("/company") public class CompanyController extends BaseController { @Autowired private CompanyService companyService; @PreventRepeat @ApiOperation("æ°å»º") @PostMapping("/create") @RequiresPermissions("company:company:create") public ApiResponse create(@RequestBody Company company) { return ApiResponse.success(companyService.create(company)); } @ApiOperation("æ ¹æ®IDå é¤") @GetMapping("/delete/{id}") @RequiresPermissions("company:company:delete") public ApiResponse deleteById(@PathVariable Integer id) { companyService.deleteById(id); return ApiResponse.success(null); } @ApiOperation("æ¹éå é¤") @GetMapping("/delete/batch") @RequiresPermissions("company:company:delete") public ApiResponse deleteByIdInBatch(@RequestParam String ids) { companyService.deleteByIdInBatch(this.getIdList(ids)); return ApiResponse.success(null); } @ApiOperation("æ ¹æ®IDä¿®æ¹") @PostMapping("/updateById") @RequiresPermissions("company:company:update") public ApiResponse updateById(@RequestBody Company company) { companyService.updateById(company); return ApiResponse.success(null); } @ApiOperation("å页æ¥è¯¢") @PostMapping("/page") @RequiresPermissions("company:company:query") public ApiResponse<PageData<Company>> findPage (@RequestBody PageWrap<Company> pageWrap) { return ApiResponse.success(companyService.findPage(pageWrap)); } @ApiOperation("æ ¹æ®IDæ¥è¯¢") @GetMapping("/{id}") @RequiresPermissions("company:company:query") public ApiResponse findById(@PathVariable Integer id) { return ApiResponse.success(companyService.findById(id)); } } server/platform/src/main/java/com/doumee/shiro/ShiroCredentialsMatcher.java
@@ -5,6 +5,7 @@ import com.doumee.service.system.SystemUserService; import org.apache.shiro.authc.AuthenticationInfo; import org.apache.shiro.authc.AuthenticationToken; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.authc.credential.HashedCredentialsMatcher; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; @@ -23,7 +24,7 @@ @Override public boolean doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info) { ShiroToken usernamePasswordToken = (ShiroToken) token; UsernamePasswordToken usernamePasswordToken = (UsernamePasswordToken) token; SystemUser queryUserDto = new SystemUser(); queryUserDto.setUsername(usernamePasswordToken.getUsername()); queryUserDto.setDeleted(Boolean.FALSE); @@ -31,12 +32,12 @@ if (systemUser == null) { return Boolean.FALSE; } if(usernamePasswordToken.getDdLogin()){ return Boolean.TRUE; } if(usernamePasswordToken.getWxLogin()){ return Boolean.TRUE; } // if(usernamePasswordToken.getDdLogin()){ // return Boolean.TRUE; // } // if(usernamePasswordToken.getWxLogin()){ // return Boolean.TRUE; // } // å å¯å¯ç String pwd = Utils.Secure.encryptPassword(new String(usernamePasswordToken.getPassword()), systemUser.getSalt()); // æ¯è¾å¯ç server/platform/src/main/java/com/doumee/shiro/ShiroToken.java
@@ -8,7 +8,7 @@ * @author Eva.Caesar Liu * @date 2022/04/18 18:12 */ @Component //@Component public class ShiroToken extends UsernamePasswordToken { /** server/service/src/main/java/com/doumee/dao/business/CompanyMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.doumee.dao.business; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.doumee.dao.business.model.Company; /** * @author AA * @since 2023/09/08 10:27 */ public interface CompanyMapper extends BaseMapper<Company> { } server/service/src/main/java/com/doumee/dao/business/join/BaseGoodsJoinMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.doumee.dao.business.join; import com.doumee.dao.business.model.BaseGoods; import com.doumee.dao.business.model.Goods; import com.github.yulichang.base.mapper.MPJJoinMapper; import org.springframework.stereotype.Repository; /** * @author T14 */ @Repository public interface BaseGoodsJoinMapper extends MPJJoinMapper<BaseGoods> { } server/service/src/main/java/com/doumee/dao/business/model/BaseCategory.java
@@ -1,5 +1,6 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.TableField; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -83,4 +84,8 @@ @ExcelColumn(name="åç§°æ¼é³é¦åæ¯") private String shortPinyin; @ApiModelProperty(value = "徿 ") @ExcelColumn(name="徿 ") @TableField(exist = false) private String imgfullurl; } server/service/src/main/java/com/doumee/dao/business/model/Brand.java
@@ -75,6 +75,6 @@ @ApiModelProperty(value = "åç¼è·¯å¾") @TableField(exist = false) private String prefixUrl; private String imgfullurl; } server/service/src/main/java/com/doumee/dao/business/model/Company.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,76 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; /** * ç³»ç»-ä¼ä¸ä¿¡æ¯è¡¨ * @author AA * @since 2023/09/08 10:27 */ @Data @ApiModel("ç³»ç»-ä¼ä¸ä¿¡æ¯è¡¨") @TableName("`company`") public class Company { @TableId(type = IdType.AUTO) @ApiModelProperty(value = "主é®", example = "1") private Integer id; @ApiModelProperty(value = "æ¯å¦å·²å é¤ 0æªå é¤ 1å·²å é¤", example = "1") private Byte deleted; @ApiModelProperty(value = "å建人ç¼ç ", example = "1") private Integer createUser; @ApiModelProperty(value = "å建æ¶é´") private Date createTime; @ApiModelProperty(value = "æ´æ°äººç¼ç ", example = "1") private Integer updateUser; @ApiModelProperty(value = "æ´æ°æ¶é´") private Date updateTime; @ApiModelProperty(value = "åç§°") private String name; @ApiModelProperty(value = "ä¼ä¸ç®ç§°") private String shortName; @ApiModelProperty(value = "夿³¨") private String remark; @ApiModelProperty(value = "管çåè´¦å·ï¼å ³èsystem_user表)", example = "1") private Integer managerId; @ApiModelProperty(value = "è系人") private String linkname; @ApiModelProperty(value = "è系人çµè¯") private String linkephone; @ApiModelProperty(value = "ç»ä¸ç¤¾ä¼ä¿¡ç¨ä»£ç ï¼ä¸å¯éå¤") private String creditCode; @ApiModelProperty(value = "ä¸»ææ°ééå¶", example = "1") private Integer userNum; @ApiModelProperty(value = "ç³»ç»ä½¿ç¨æææ") @JsonFormat(pattern = "yyyy-MM-dd") private Date oepnValidDate; @ApiModelProperty(value = "è´¦æ·å¼éç±»å 0è¯ç¨è´¦æ· 1æ£å¼è´¦æ·", example = "1") private Integer oepnType; @ApiModelProperty(value = "éå®äººåç¼ç ï¼å ³èsystem_user表)", example = "1") private Integer salesmanId; } server/service/src/main/java/com/doumee/dao/business/model/dto/BaseCategoryRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,52 @@ package com.doumee.dao.business.model.dto; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2023/6/7 15:09 */ @Data public class BaseCategoryRequest { @ApiModelProperty(value = "主é®") private Integer id; @ApiModelProperty(value = "åç§°ï¼ä¸å¯éå¤ï¼") private String name; @ApiModelProperty(value = "夿³¨") private String remark; @ApiModelProperty(value = "屿§1åç§°") private String attrFirst; @ApiModelProperty(value = "屿§2åç§°") private String attrSecond; @ApiModelProperty(value = "ç¶æ 0å¯ç¨ 1ç¦ç¨", example = "1") private Integer status; @ApiModelProperty(value = "æåºç ", example = "1") private Integer sortnum; @ApiModelProperty(value = "徿 ") private String imgurl; @ApiModelProperty(value = "åç§°æ¼é³") private String pinyin; @ApiModelProperty(value = "åç§°æ¼é³é¦åæ¯") private String shortPinyin; @ApiModelProperty(value = "忰屿§é ç½®") List<BaseCategoryRequestParam> baseCategoryRequestParamList; } server/service/src/main/java/com/doumee/dao/business/model/dto/BaseCategoryRequestParam.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,29 @@ package com.doumee.dao.business.model.dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * @author T14 */ @Data public class BaseCategoryRequestParam{ @ApiModelProperty(value = "主é®") private Integer id; @ApiModelProperty(value = "åç§°") private String name; @ApiModelProperty(value = "夿³¨") private String remark; @ApiModelProperty(value = "ç¶æ 0å¯ç¨ 1ç¦ç¨", example = "1") private Integer status; @ApiModelProperty(value = "æåºç ", example = "1") private Integer sortnum; @ApiModelProperty(value = "æå±åç±»ç¼ç (å ³ècategory表)", example = "1") private Integer categoryId; } server/service/src/main/java/com/doumee/service/business/BaseCategoryService.java
@@ -3,6 +3,8 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.BaseCategory; import com.doumee.dao.business.model.dto.BaseCategoryRequest; import java.util.List; /** @@ -18,7 +20,7 @@ * @param baseCategory å®ä½å¯¹è±¡ * @return Integer */ Integer create(BaseCategory baseCategory); Integer create(BaseCategoryRequest baseCategory); /** * 主é®å é¤ @@ -46,6 +48,13 @@ * * @param baseCategory å®ä½å¯¹è±¡ */ void updateById(BaseCategoryRequest baseCategory); /** * 䏻鮿´æ° * * @param baseCategory å®ä½å¯¹è±¡ */ void updateById(BaseCategory baseCategory); /** server/service/src/main/java/com/doumee/service/business/CompanyService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,100 @@ package com.doumee.service.business; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Company; import java.util.List; /** * ç³»ç»-ä¼ä¸ä¿¡æ¯è¡¨Serviceå®ä¹ * @author AA * @since 2023/09/08 10:27 */ public interface CompanyService { /** * å建 * * @param company å®ä½å¯¹è±¡ * @return Integer */ Integer create(Company company); /** * 主é®å é¤ * * @param id ä¸»é® */ void deleteById(Integer id); /** * å é¤ * * @param company å®ä½å¯¹è±¡ */ void delete(Company company); /** * æ¹é主é®å é¤ * * @param ids 主é®é */ void deleteByIdInBatch(List<Integer> ids); /** * 䏻鮿´æ° * * @param company å®ä½å¯¹è±¡ */ void updateById(Company company); /** * æ¹é䏻鮿´æ° * * @param companys å®ä½é */ void updateByIdInBatch(List<Company> companys); /** * 䏻鮿¥è¯¢ * * @param id ä¸»é® * @return Company */ Company findById(Integer id); /** * æ¡ä»¶æ¥è¯¢åæ¡è®°å½ * * @param company å®ä½å¯¹è±¡ * @return Company */ Company findOne(Company company); /** * æ¡ä»¶æ¥è¯¢ * * @param company å®ä½å¯¹è±¡ * @return List<Company> */ List<Company> findList(Company company); /** * å页æ¥è¯¢ * * @param pageWrap å页对象 * @return PageData<Company> */ PageData<Company> findPage(PageWrap<Company> pageWrap); /** * æ¡ä»¶ç»è®¡ * * @param company å®ä½å¯¹è±¡ * @return long */ long count(Company company); } server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java
@@ -1,20 +1,34 @@ package com.doumee.service.business.impl; import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.BaseCateParamMapper; import com.doumee.dao.business.BaseCategoryMapper; import com.doumee.dao.business.model.BaseCateParam; import com.doumee.dao.business.model.BaseCategory; import com.doumee.dao.business.model.dto.BaseCategoryRequest; import com.doumee.service.business.BaseCateParamService; import com.doumee.service.business.BaseCategoryService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.util.Date; import java.util.List; import java.util.Objects; import java.util.stream.Collectors; /** * ç´ æåº-å类信æ¯è¡¨Serviceå®ç° @@ -27,10 +41,64 @@ @Autowired private BaseCategoryMapper baseCategoryMapper; @Autowired private BaseCateParamMapper baseCateParamMapper; @Autowired private SystemDictDataBiz systemDictDataBiz; @Transactional(rollbackFor = {Exception.class,BusinessException.class}) @Override public Integer create(BaseCategory baseCategory) { baseCategoryMapper.insert(baseCategory); return baseCategory.getId(); public Integer create(BaseCategoryRequest baseCategory) { LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(); wrapper.lambda().eq(BaseCategory::getName,baseCategory.getName()) .eq(BaseCategory::getIsdeleted,Constants.ZERO); BaseCategory baseCategory1 = baseCategoryMapper.selectOne(wrapper); if (Objects.nonNull(baseCategory1)){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"å类信æ¯è¡¨"); } BaseCategory baseCategory2 = new BaseCategory(); baseCategory2.setCreator(loginUserInfo.getId()); baseCategory2.setCreateDate(new Date()); baseCategory2.setEditor(loginUserInfo.getId()); baseCategory2.setEditDate(new Date()); baseCategory2.setIsdeleted(Constants.ZERO); baseCategory2.setName(baseCategory.getName()); baseCategory2.setRemark(baseCategory.getRemark()); baseCategory2.setAttrFirst(baseCategory.getAttrFirst()); baseCategory2.setAttrSecond(baseCategory.getAttrSecond()); baseCategory2.setStatus(baseCategory.getStatus()); baseCategory2.setSortnum(baseCategory.getSortnum()); baseCategory2.setImgurl(baseCategory.getImgurl()); baseCategory2.setPinyin(baseCategory.getPinyin()); baseCategory2.setShortPinyin(baseCategory.getShortPinyin()); baseCategoryMapper.insert(baseCategory2); if (CollectionUtils.isEmpty(baseCategory.getBaseCategoryRequestParamList())){ long count = baseCategory.getBaseCategoryRequestParamList().stream().map(s -> s.getName().trim()).distinct().count(); if (baseCategory.getBaseCategoryRequestParamList().size() != count){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"屿§åå¨éå¤"); } baseCategory.getBaseCategoryRequestParamList().forEach(s->{ BaseCateParam baseCateParam = new BaseCateParam(); baseCateParam.setCreator(loginUserInfo.getId()); baseCateParam.setCreateDate(new Date()); baseCateParam.setEditor(loginUserInfo.getId()); baseCateParam.setEditDate(new Date()); baseCateParam.setIsdeleted(Constants.ZERO); baseCateParam.setName(s.getName()); baseCateParam.setRemark(s.getRemark()); baseCateParam.setStatus(s.getStatus()); baseCateParam.setSortnum(s.getSortnum()); baseCateParam.setCategoryId(baseCategory2.getId()); baseCateParamMapper.insert(baseCateParam); }); } return baseCategory2.getId(); } @Override @@ -50,6 +118,64 @@ return; } baseCategoryMapper.deleteBatchIds(ids); } @Transactional(rollbackFor = {Exception.class,BusinessException.class}) @Override public void updateById(BaseCategoryRequest baseCategory) { LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); if (Objects.nonNull(baseCategory.getId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"å类主é®ç¼ºå¤±"); } QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(); wrapper.lambda().eq(BaseCategory::getName,baseCategory.getName()) .eq(BaseCategory::getIsdeleted,Constants.ZERO); BaseCategory baseCategory1 = baseCategoryMapper.selectOne(wrapper); if (Objects.nonNull(baseCategory1) && (!baseCategory1.getId().equals(baseCategory.getId()))){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"å类信æ¯è¡¨"); } UpdateWrapper<BaseCategory> updateWrapper = new UpdateWrapper<>(); updateWrapper.lambda() .eq(BaseCategory::getId,baseCategory.getId()) .set(BaseCategory::getName,baseCategory.getName()) .set(BaseCategory::getImgurl,baseCategory.getImgurl()) .set(BaseCategory::getSortnum,baseCategory.getSortnum()); baseCategoryMapper.update(null,wrapper); if (CollectionUtils.isEmpty(baseCategory.getBaseCategoryRequestParamList())){ long count = baseCategory.getBaseCategoryRequestParamList().stream().map(s -> s.getName().trim()).distinct().count(); if (baseCategory.getBaseCategoryRequestParamList().size() != count){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"屿§åå¨éå¤"); } QueryWrapper<BaseCateParam> baseCateParamQuery = new QueryWrapper<>(); baseCateParamQuery.lambda() .eq(BaseCateParam::getCategoryId,baseCategory.getId()); baseCateParamMapper.delete(baseCateParamQuery); baseCategory.getBaseCategoryRequestParamList().forEach(s->{ BaseCateParam baseCateParam = new BaseCateParam(); baseCateParam.setCreator(loginUserInfo.getId()); baseCateParam.setCreateDate(new Date()); baseCateParam.setEditor(loginUserInfo.getId()); baseCateParam.setEditDate(new Date()); baseCateParam.setIsdeleted(Constants.ZERO); baseCateParam.setName(s.getName()); baseCateParam.setRemark(s.getRemark()); baseCateParam.setStatus(s.getStatus()); baseCateParam.setSortnum(s.getSortnum()); baseCateParam.setCategoryId(baseCategory.getId()); baseCateParamMapper.insert(baseCateParam); }); } } @Override @@ -136,14 +262,14 @@ if (pageWrap.getModel().getShortPinyin() != null) { queryWrapper.lambda().eq(BaseCategory::getShortPinyin, pageWrap.getModel().getShortPinyin()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); queryWrapper.lambda().orderByAsc(BaseCategory::getSortnum); IPage<BaseCategory> baseCategoryIPage = baseCategoryMapper.selectPage(page, queryWrapper); if (!CollectionUtils.isEmpty(baseCategoryIPage.getRecords())){ baseCategoryIPage.getRecords().forEach(s->s.setImgfullurl(getPreUrl()+s.getImgfullurl())); } } return PageData.from(baseCategoryMapper.selectPage(page, queryWrapper)); return PageData.from(baseCategoryIPage); } @Override @@ -151,4 +277,10 @@ QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(baseCategory); return baseCategoryMapper.selectCount(wrapper); } private String getPreUrl(){ String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.CATEGORY_IMG).getCode(); return prefixUrl; } } server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java
@@ -4,12 +4,15 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.BaseGoodsMapper; import com.doumee.dao.business.join.BaseGoodsJoinMapper; import com.doumee.dao.business.model.BaseGoods; import com.doumee.dao.business.model.Goods; import com.doumee.service.business.BaseGoodsService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -26,6 +29,10 @@ @Autowired private BaseGoodsMapper baseGoodsMapper; @Autowired private BaseGoodsJoinMapper baseGoodsJoinMapper; @Override public Integer create(BaseGoods baseGoods) { @@ -87,72 +94,29 @@ @Override public PageData<BaseGoods> findPage(PageWrap<BaseGoods> pageWrap) { IPage<BaseGoods> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<BaseGoods> queryWrapper = new QueryWrapper<>(); MPJLambdaWrapper<BaseGoods> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(BaseGoods::getId, pageWrap.getModel().getId()); } if (pageWrap.getModel().getCreator() != null) { queryWrapper.lambda().eq(BaseGoods::getCreator, pageWrap.getModel().getCreator()); } if (pageWrap.getModel().getCreateDate() != null) { queryWrapper.lambda().ge(BaseGoods::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); queryWrapper.lambda().le(BaseGoods::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); } if (pageWrap.getModel().getEditor() != null) { queryWrapper.lambda().eq(BaseGoods::getEditor, pageWrap.getModel().getEditor()); } if (pageWrap.getModel().getEditDate() != null) { queryWrapper.lambda().ge(BaseGoods::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); queryWrapper.lambda().le(BaseGoods::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); } if (pageWrap.getModel().getIsdeleted() != null) { queryWrapper.lambda().eq(BaseGoods::getIsdeleted, pageWrap.getModel().getIsdeleted()); } if (pageWrap.getModel().getRemark() != null) { queryWrapper.lambda().eq(BaseGoods::getRemark, pageWrap.getModel().getRemark()); queryWrapper.eq(BaseGoods::getId, pageWrap.getModel().getId()); } if (pageWrap.getModel().getName() != null) { queryWrapper.lambda().eq(BaseGoods::getName, pageWrap.getModel().getName()); queryWrapper.eq(BaseGoods::getName, pageWrap.getModel().getName()); } if (pageWrap.getModel().getStatus() != null) { queryWrapper.lambda().eq(BaseGoods::getStatus, pageWrap.getModel().getStatus()); queryWrapper.eq(BaseGoods::getStatus, pageWrap.getModel().getStatus()); } if (pageWrap.getModel().getSortnum() != null) { queryWrapper.lambda().eq(BaseGoods::getSortnum, pageWrap.getModel().getSortnum()); } if (pageWrap.getModel().getImgurl() != null) { queryWrapper.lambda().eq(BaseGoods::getImgurl, pageWrap.getModel().getImgurl()); } if (pageWrap.getModel().getCategoryId() != null) { queryWrapper.lambda().eq(BaseGoods::getCategoryId, pageWrap.getModel().getCategoryId()); queryWrapper.eq(BaseGoods::getCategoryId, pageWrap.getModel().getCategoryId()); } if (pageWrap.getModel().getBrandId() != null) { queryWrapper.lambda().eq(BaseGoods::getBrandId, pageWrap.getModel().getBrandId()); queryWrapper.eq(BaseGoods::getBrandId, pageWrap.getModel().getBrandId()); } if (pageWrap.getModel().getZdPrice() != null) { queryWrapper.lambda().eq(BaseGoods::getZdPrice, pageWrap.getModel().getZdPrice()); } if (pageWrap.getModel().getPrice() != null) { queryWrapper.lambda().eq(BaseGoods::getPrice, pageWrap.getModel().getPrice()); } if (pageWrap.getModel().getContent() != null) { queryWrapper.lambda().eq(BaseGoods::getContent, pageWrap.getModel().getContent()); } if (pageWrap.getModel().getPinyin() != null) { queryWrapper.lambda().eq(BaseGoods::getPinyin, pageWrap.getModel().getPinyin()); } if (pageWrap.getModel().getShortPinyin() != null) { queryWrapper.lambda().eq(BaseGoods::getShortPinyin, pageWrap.getModel().getShortPinyin()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(baseGoodsMapper.selectPage(page, queryWrapper)); queryWrapper.orderByDesc(Goods::getId); return PageData.from(baseGoodsJoinMapper.selectJoinPage(page,BaseGoods.class,queryWrapper)); } @Override server/service/src/main/java/com/doumee/service/business/impl/BrandServiceImpl.java
@@ -104,7 +104,7 @@ String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode(); Brand brand = brandMapper.selectById(id); brand.setPrefixUrl(prefixUrl); brand.setImgfullurl(prefixUrl+brand.getImgurl()); return brand; } @@ -124,7 +124,7 @@ String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode(); for (Brand b:list) { b.setPrefixUrl(prefixUrl); b.setImgfullurl(prefixUrl+b.getImgurl()); } return list; } @@ -146,7 +146,7 @@ String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode(); brandIPage.getRecords().forEach(i->{ i.setPrefixUrl(prefixUrl); i.setImgfullurl(prefixUrl+i.getImgurl()); }); return PageData.from(brandIPage); } server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,130 @@ package com.doumee.service.business.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.CompanyMapper; import com.doumee.dao.business.model.Company; import com.doumee.service.business.CompanyService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; /** * ç³»ç»-ä¼ä¸ä¿¡æ¯è¡¨Serviceå®ç° * @author AA * @since 2023/09/08 10:27 */ @Service public class CompanyServiceImpl implements CompanyService { @Autowired private CompanyMapper companyMapper; @Override public Integer create(Company company) { companyMapper.insert(company); return company.getId(); } @Override public void deleteById(Integer id) { companyMapper.deleteById(id); } @Override public void delete(Company company) { UpdateWrapper<Company> deleteWrapper = new UpdateWrapper<>(company); companyMapper.delete(deleteWrapper); } @Override public void deleteByIdInBatch(List<Integer> ids) { if (CollectionUtils.isEmpty(ids)) { return; } companyMapper.deleteBatchIds(ids); } @Override public void updateById(Company company) { companyMapper.updateById(company); } @Override public void updateByIdInBatch(List<Company> companys) { if (CollectionUtils.isEmpty(companys)) { return; } for (Company company: companys) { this.updateById(company); } } @Override public Company findById(Integer id) { return companyMapper.selectById(id); } @Override public Company findOne(Company company) { QueryWrapper<Company> wrapper = new QueryWrapper<>(company); return companyMapper.selectOne(wrapper); } @Override public List<Company> findList(Company company) { QueryWrapper<Company> wrapper = new QueryWrapper<>(company); return companyMapper.selectList(wrapper); } @Override public PageData<Company> findPage(PageWrap<Company> pageWrap) { IPage<Company> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<Company> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); queryWrapper.lambda() .eq(pageWrap.getModel().getId() != null, Company::getId, pageWrap.getModel().getId()) .eq(pageWrap.getModel().getDeleted() != null, Company::getDeleted, pageWrap.getModel().getDeleted()) .eq(pageWrap.getModel().getCreateUser() != null, Company::getCreateUser, pageWrap.getModel().getCreateUser()) .ge(pageWrap.getModel().getCreateTime() != null, Company::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime())) .le(pageWrap.getModel().getCreateTime() != null, Company::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime())) .eq(pageWrap.getModel().getUpdateUser() != null, Company::getUpdateUser, pageWrap.getModel().getUpdateUser()) .ge(pageWrap.getModel().getUpdateTime() != null, Company::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime())) .le(pageWrap.getModel().getUpdateTime() != null, Company::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime())) .eq(pageWrap.getModel().getName() != null, Company::getName, pageWrap.getModel().getName()) .eq(pageWrap.getModel().getShortName() != null, Company::getShortName, pageWrap.getModel().getShortName()) .eq(pageWrap.getModel().getRemark() != null, Company::getRemark, pageWrap.getModel().getRemark()) .eq(pageWrap.getModel().getManagerId() != null, Company::getManagerId, pageWrap.getModel().getManagerId()) .eq(pageWrap.getModel().getLinkname() != null, Company::getLinkname, pageWrap.getModel().getLinkname()) .eq(pageWrap.getModel().getLinkephone() != null, Company::getLinkephone, pageWrap.getModel().getLinkephone()) .eq(pageWrap.getModel().getCreditCode() != null, Company::getCreditCode, pageWrap.getModel().getCreditCode()) .eq(pageWrap.getModel().getUserNum() != null, Company::getUserNum, pageWrap.getModel().getUserNum()) .ge(pageWrap.getModel().getOepnValidDate() != null, Company::getOepnValidDate, Utils.Date.getStart(pageWrap.getModel().getOepnValidDate())) .le(pageWrap.getModel().getOepnValidDate() != null, Company::getOepnValidDate, Utils.Date.getEnd(pageWrap.getModel().getOepnValidDate())) .eq(pageWrap.getModel().getOepnType() != null, Company::getOepnType, pageWrap.getModel().getOepnType()) .eq(pageWrap.getModel().getSalesmanId() != null, Company::getSalesmanId, pageWrap.getModel().getSalesmanId()) ; for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(companyMapper.selectPage(page, queryWrapper)); } @Override public long count(Company company) { QueryWrapper<Company> wrapper = new QueryWrapper<>(company); return companyMapper.selectCount(wrapper); } }