server/company/src/main/java/com/doumee/config/shiro/ShiroRealm.java
@@ -102,8 +102,8 @@ if(DateUtil.compareDate(new Date(),DateUtil.addDaysToDate(company.getOepnValidDate(),1))<=Constants.ZERO){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¼ä¸ä¿¡æ¯å·²è¿æï¼å¦æçé®è¯·è系系ç»ç®¡çåï¼"); } user.setCompany(company); } // è·åç»å½ç¨æ·ä¿¡æ¯ List<SystemRole> roles = systemRoleService.findByUserId(user.getId()); List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId()); server/platform/src/main/java/com/doumee/api/business/FileRecordController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,90 @@ package com.doumee.api.business; import com.doumee.api.BaseController; import com.doumee.core.annotation.excel.ExcelExporter; import com.doumee.core.annotation.pr.PreventRepeat; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.model.FileRecord; import com.doumee.service.business.FileRecordService; 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.*; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.List; /** * @author æ±è¹è¹ * @date 2023/09/19 17:30 */ @Api(tags = "éä»¶ä¸ä¼ è¿åº¦è¡¨") @RestController @RequestMapping("/business/fileRecord") public class FileRecordController extends BaseController { @Autowired private FileRecordService fileRecordService; @PreventRepeat @ApiOperation("æ°å»º") @PostMapping("/create") @RequiresPermissions("business:filerecord:create") public ApiResponse create(@RequestBody FileRecord fileRecord) { return ApiResponse.success(fileRecordService.create(fileRecord)); } @ApiOperation("æ ¹æ®IDå é¤") @GetMapping("/delete/{id}") @RequiresPermissions("business:filerecord:delete") public ApiResponse deleteById(@PathVariable Integer id) { fileRecordService.deleteById(id); return ApiResponse.success(null); } @ApiOperation("æ¹éå é¤") @GetMapping("/delete/batch") @RequiresPermissions("business:filerecord:delete") public ApiResponse deleteByIdInBatch(@RequestParam String ids) { String [] idArray = ids.split(","); List<Integer> idList = new ArrayList<>(); for (String id : idArray) { idList.add(Integer.valueOf(id)); } fileRecordService.deleteByIdInBatch(idList); return ApiResponse.success(null); } @ApiOperation("æ ¹æ®IDä¿®æ¹") @PostMapping("/updateById") @RequiresPermissions("business:filerecord:update") public ApiResponse updateById(@RequestBody FileRecord fileRecord) { fileRecordService.updateById(fileRecord); return ApiResponse.success(null); } @ApiOperation("å页æ¥è¯¢") @PostMapping("/page") @RequiresPermissions("business:filerecord:query") public ApiResponse<PageData<FileRecord>> findPage (@RequestBody PageWrap<FileRecord> pageWrap) { return ApiResponse.success(fileRecordService.findPage(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") @RequiresPermissions("business:filerecord:exportExcel") public void exportExcel (@RequestBody PageWrap<FileRecord> pageWrap, HttpServletResponse response) { ExcelExporter.build(FileRecord.class).export(fileRecordService.findPage(pageWrap).getRecords(), "éä»¶ä¸ä¼ è¿åº¦è¡¨", response); } @ApiOperation("æ ¹æ®IDæ¥è¯¢") @GetMapping("/{id}") @RequiresPermissions("business:filerecord:query") public ApiResponse findById(@PathVariable Integer id) { return ApiResponse.success(fileRecordService.findById(id)); } } server/service/src/main/java/com/doumee/core/model/LoginUserInfo.java
@@ -1,5 +1,6 @@ package com.doumee.core.model; import com.doumee.dao.business.model.Company; import com.doumee.dao.system.model.SystemPermission; import com.doumee.dao.system.model.SystemRole; import com.doumee.dao.system.model.SystemUser; @@ -38,6 +39,7 @@ private Integer cityId; private Integer parentId; private Integer type; private Company company; private List<String> roles; @@ -50,6 +52,7 @@ // æ·è´ç¨æ·ä¿¡æ¯ LoginUserInfo loginUserInfo = new LoginUserInfo(); BeanUtils.copyProperties(user, loginUserInfo); loginUserInfo.setCompany(user.getCompany()); // 设置è§è²ä¿¡æ¯ List<String> rs = new ArrayList<>(); for (SystemRole role : roles) { server/service/src/main/java/com/doumee/dao/business/FileRecordMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,15 @@ package com.doumee.dao.business; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.doumee.dao.business.model.FileRecord; import java.util.List; /** * @author æ±è¹è¹ * @date 2023/09/19 17:30 */ public interface FileRecordMapper extends BaseMapper<FileRecord> { void insertBatch(List<FileRecord> fileRecords); } server/service/src/main/java/com/doumee/dao/business/model/FileRecord.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,78 @@ package com.doumee.dao.business.model; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; /** * éä»¶ä¸ä¼ è¿åº¦è¡¨ * @author æ±è¹è¹ * @date 2023/09/19 17:30 */ @Data @ApiModel("éä»¶ä¸ä¼ è¿åº¦è¡¨") @TableName("`file_record`") public class FileRecord { @ApiModelProperty(value = "主é®", example = "1") @ExcelColumn(name="主é®") private Integer id; @ApiModelProperty(value = "å建人ç¼ç ", example = "1") @ExcelColumn(name="å建人ç¼ç ") private Integer creator; @ApiModelProperty(value = "å建æ¶é´") @ExcelColumn(name="å建æ¶é´") @JsonFormat(pattern = "yyyy-MM-dd") private Date createDate; @ApiModelProperty(value = "æ´æ°äººç¼ç ", example = "1") @ExcelColumn(name="æ´æ°äººç¼ç ") private Integer editor; @ApiModelProperty(value = "æ´æ°æ¶é´") @ExcelColumn(name="æ´æ°æ¶é´") @JsonFormat(pattern = "yyyy-MM-dd") private Date editDate; @ApiModelProperty(value = "æ¯å¦å é¤0å¦ 1æ¯", example = "1") @ExcelColumn(name="æ¯å¦å é¤0å¦ 1æ¯") private Integer isdeleted; @ApiModelProperty(value = "æä»¶å") @ExcelColumn(name="æä»¶å") private String name; @ApiModelProperty(value = "ç½ç»å¾å°å") @ExcelColumn(name="ç½ç»å¾å°å") private String url; @ApiModelProperty(value = "夿³¨") @ExcelColumn(name="夿³¨") private String info; @ApiModelProperty(value = "å ³è对象ç¼ç ", example = "1") @ExcelColumn(name="å ³è对象ç¼ç ") private String objId; @ApiModelProperty(value = "ç±»å0å¾ç 1è§é¢ 2å ¶ä»", example = "1") @ExcelColumn(name="ç±»å0å¾ç 1è§é¢ 2å ¶ä»") private Integer type; @ApiModelProperty(value = "æä»¶å¤¹åç§°") @ExcelColumn(name="æä»¶å¤¹åç§°") private String folder; @ApiModelProperty(value = "ä¸ä¼ ç»æ") @ExcelColumn(name="ä¸ä¼ ç»æ") private String content; @ApiModelProperty(value = "ç¶æ 0æªä¸ä¼ 1å·²ä¸ä¼ 2ä¸ä¼ 失败", example = "1") @ExcelColumn(name="ç¶æ 0æªä¸ä¼ 1å·²ä¸ä¼ 2ä¸ä¼ 失败") private Integer status; } server/service/src/main/java/com/doumee/dao/system/model/SystemUser.java
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.doumee.core.constants.OperaType; import com.doumee.dao.business.model.Company; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.IdType; @@ -96,5 +97,8 @@ @ApiModelProperty(value = "0 å¯ç¨ 1 ç¦ç¨") private Integer status; @ApiModelProperty(value = "0 å¯ç¨ 1 ç¦ç¨") @TableField(exist = false) private Company company; } server/service/src/main/java/com/doumee/service/business/FileRecordService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,97 @@ package com.doumee.service.business; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.FileRecord; import java.util.List; /** * éä»¶ä¸ä¼ è¿åº¦è¡¨Serviceå®ä¹ * @author æ±è¹è¹ * @date 2023/09/19 17:30 */ public interface FileRecordService { /** * å建 * * @param fileRecord å®ä½å¯¹è±¡ * @return Integer */ Integer create(FileRecord fileRecord); /** * 主é®å é¤ * * @param id ä¸»é® */ void deleteById(Integer id); /** * å é¤ * * @param fileRecord å®ä½å¯¹è±¡ */ void delete(FileRecord fileRecord); /** * æ¹é主é®å é¤ * * @param ids 主é®é */ void deleteByIdInBatch(List<Integer> ids); /** * 䏻鮿´æ° * * @param fileRecord å®ä½å¯¹è±¡ */ void updateById(FileRecord fileRecord); /** * æ¹é䏻鮿´æ° * * @param fileRecords å®ä½é */ void updateByIdInBatch(List<FileRecord> fileRecords); /** * 䏻鮿¥è¯¢ * * @param id ä¸»é® * @return FileRecord */ FileRecord findById(Integer id); /** * æ¡ä»¶æ¥è¯¢åæ¡è®°å½ * * @param fileRecord å®ä½å¯¹è±¡ * @return FileRecord */ FileRecord findOne(FileRecord fileRecord); /** * æ¡ä»¶æ¥è¯¢ * * @param fileRecord å®ä½å¯¹è±¡ * @return List<FileRecord> */ List<FileRecord> findList(FileRecord fileRecord); /** * å页æ¥è¯¢ * * @param pageWrap å页对象 * @return PageData<FileRecord> */ PageData<FileRecord> findPage(PageWrap<FileRecord> pageWrap); /** * æ¡ä»¶ç»è®¡ * * @param fileRecord å®ä½å¯¹è±¡ * @return long */ long count(FileRecord fileRecord); } server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
@@ -61,6 +61,8 @@ private BaseCateParamMapper baseCateParamMapper; @Autowired private BrandMapper brandMapper; @Autowired private FileRecordMapper fileRecordMapper; @Override public String create(BaseData baseData) { @@ -316,7 +318,7 @@ public static boolean IS_RUNNING = false; @Override @Async @Transactional(isolation = Isolation.READ_UNCOMMITTED) @Transactional public void dealBaseData() { if(IS_RUNNING){ return; @@ -353,6 +355,8 @@ Date date = new Date(); List<BaseCateParam> baseCateParamList = new ArrayList<>(); List<Multifile> fileList = new ArrayList<>(); List<Integer> goodsIdList = new ArrayList<>(); List<FileRecord> fileRecords = new ArrayList<>(); List<BaseGoodsParam> baseGoodsParamList = new ArrayList<>(); for(BaseData data : allLis){ BaseGoods goods = new BaseGoods(); @@ -374,35 +378,19 @@ goods.setBrandId(bModel.getId()); } //å¤çåè¡¨æ°æ® BaseCategory cModel = getCateModelFromList(rate,data.getCategory(),ossModel,data.getCategoryImg(), cateList); BaseCategory cModel = getCateModelFromList(rate,data.getCategory(),ossModel,data.getCategoryImg(), cateList,fileRecords); if(cModel!= null){ goods.setCategoryId(cModel.getId()); } goods.setImgurl(getOssImgurl(ossModel,ossModel.getGoodsFolder(), data.getImgurl())); // goods.setImgurl(getOssImgurl(ossModel,ossModel.getGoodsFolder(), data.getImgurl())); goods.setImgurl(getOssImgurlFile(ossModel.getGoodsFolder(), data.getImgurl(), data.getId(),Constants.ZERO,fileRecords)); goods.setPrice(Constants.formatBigdecimal(data.getSaleprice()).multiply(Constants.formatBigdecimal(cModel.getPriceRate()))); if(model!=null){ //妿已ç»åå¨ï¼é»è¾å 餿§çååæ°æ® // UpdateWrapper<BaseGoods> updateModel = new UpdateWrapper<>(); // updateModel.lambda().set(BaseGoods::getIsdeleted,Constants.ONE); // updateModel.lambda().set(BaseGoods::getEditDate, new Date()); // updateModel.lambda().eq(BaseGoods::getBaseDataId, data.getId()); // baseGoodsMapper.update(null, updateModel); //妿已ç»åå¨ï¼æ´æ°ååæ°æ® goods.setEditDate(date); goods.setId(model.getId()); baseGoodsMapper.updateById(goods); //å é¤åæéä»¶å¤§å¾ UpdateWrapper<Multifile> updateModel = new UpdateWrapper<>(); updateModel.lambda().set(Multifile::getIsdeleted,Constants.ONE); updateModel.lambda().set(Multifile::getEditDate, new Date()); updateModel.lambda().eq(Multifile::getObjId, goods.getId()); updateModel.lambda().eq(Multifile::getObjType, Constants.ZERO); multifileMapper.delete(updateModel); //å é¤åæåå屿§ UpdateWrapper<BaseGoodsParam> bgModel = new UpdateWrapper<>(); bgModel.lambda().set(BaseGoodsParam::getIsdeleted,Constants.ONE); bgModel.lambda().set(BaseGoodsParam::getEditDate, new Date()); bgModel.lambda().eq(BaseGoodsParam::getGoodsId, goods.getId()); baseGoodsParamMapper.delete(bgModel); goodsIdList.add(goods.getId()); }else{ //æå ¥æ°ååæ°æ® goods.setCreateDate(date); @@ -411,17 +399,36 @@ //å¤çåç±»å±æ§ dealCateParamAll(cModel.getId(),goods.getId(),data,paramList, baseGoodsParamList ); //å¤çèæ¯å¾ dealBgImgAll(ossModel,goods.getId(),data,fileList); dealBgImgAll(ossModel,goods.getId(),data,fileList,fileRecords); data.setEditDate(new Date()); data.setStatus(Constants.ONE); //æ´æ°æ°æ®å¤çç¶æ baseDataMapper.updateById(data); } if(goodsIdList.size()>0){ //å é¤åæéä»¶å¤§å¾ UpdateWrapper<Multifile> updateModel = new UpdateWrapper<>(); updateModel.lambda().set(Multifile::getIsdeleted,Constants.ONE); updateModel.lambda().set(Multifile::getEditDate, new Date()); updateModel.lambda().in(Multifile::getObjId, goodsIdList); updateModel.lambda().eq(Multifile::getObjType, Constants.ZERO); multifileMapper.delete(updateModel); //å é¤åæåå屿§ UpdateWrapper<BaseGoodsParam> bgModel = new UpdateWrapper<>(); bgModel.lambda().set(BaseGoodsParam::getIsdeleted,Constants.ONE); bgModel.lambda().set(BaseGoodsParam::getEditDate, new Date()); bgModel.lambda().in(BaseGoodsParam::getGoodsId, goodsIdList); baseGoodsParamMapper.delete(bgModel); } if(fileList.size()>0){ multifileMapper.insertBatch(fileList); } if(baseGoodsParamList.size()>0){ baseGoodsParamMapper.insertBatch(baseGoodsParamList); } if(fileRecords.size()>0){ fileRecordMapper.insertBatch(fileRecords); } log.info("å¼å§å¤çæºæ°æ®=================success================å¤çæ°æ®å ±ï¼"+allLis.size()+"ï¼ä¸ª==="); }catch (Exception e){ @@ -435,7 +442,7 @@ } private void dealBgImgAll(OssModel ossModel, Integer id, BaseData data,List<Multifile> fileList) { private void dealBgImgAll(OssModel ossModel, Integer id, BaseData data,List<Multifile> fileList,List<FileRecord> fileRecords) { int i =0; //å¤å¾ï¼è±æéå·éå¼ if(StringUtils.isNotBlank(data.getBgImg())){ @@ -443,7 +450,7 @@ String[] imgs =tImg.split(","); for (int j = 0; j < imgs.length; j++) { if(StringUtils.isNotBlank(imgs[j])){ i += addImg(i,ossModel,id,imgs[j],fileList); i += addImg(i,ossModel,id,imgs[j],fileList,fileRecords); } } } @@ -452,9 +459,10 @@ // addImg(i,ossModel,id,data.getBgImg3()); } private int addImg(int i,OssModel ossModel, Integer id,String bgImg,List<Multifile> fileList) { private int addImg(int i,OssModel ossModel, Integer id,String bgImg,List<Multifile> fileList,List<FileRecord> fileRecords) { if(StringUtils.isNotBlank(bgImg)){ String img =getOssImgurl(ossModel, ossModel.getGoodsFolder() ,bgImg); // String img =getOssImgurl(ossModel, ossModel.getGoodsFolder() ,bgImg); String img = getOssImgurlFile(ossModel.getGoodsFolder(), bgImg, null,Constants.TWO,fileRecords); if(StringUtils.isNotBlank(img)){ Multifile f = new Multifile(); f.setFileurl(img); @@ -627,7 +635,7 @@ * @return */ private BaseCategory getCateModelFromList(BigDecimal dRate,String name, OssModel ossModel, String img, List<BaseCategory> list) { private BaseCategory getCateModelFromList(BigDecimal dRate,String name, OssModel ossModel, String img, List<BaseCategory> list, List<FileRecord> fileRecords) { if(StringUtils.isBlank(name)){ return null; } @@ -645,7 +653,8 @@ model.setIsdeleted(Constants.ZERO); model.setPinyin(PinYinUtil.getFullSpell(model.getName())); model.setShortPinyin(PinYinUtil.getFirstSpell(model.getName())); model.setImgurl(getOssImgurl(ossModel, ossModel.getCateFolder() ,img)); // model.setImgurl(getOssImgurl(ossModel, ossModel.getCateFolder() ,img)); model.setImgurl(getOssImgurlFile(ossModel.getCateFolder(), img, null,Constants.ONE,fileRecords)); //æå ¥æ°çåçä¿¡æ¯ baseCategoryMapper.insert(model); //å å ¥éåä¸ @@ -666,6 +675,7 @@ String tempFileName = nowDate + "/" + fileName; String key =folder+ tempFileName;// æä»¶å ALiYunUtil obs = new ALiYunUtil(ossModel.getEndpoint(), ossModel.getAccessId(), ossModel.getAccessKey()); if (obs.uploadOnlineObject(img,ossModel.getBucket(), key,null)) { return tempFileName; @@ -675,6 +685,33 @@ } return null; } public String getOssImgurlFile(String folder,String img ,String id,Integer objType,List<FileRecord> fileRecords) { if(StringUtils.isBlank(img)){ return null; } try { String nowDate = DateUtil.getNowShortDate();// å½åæ¶é´ï¼å¹´ææ¥ï¼ String nfix = img.lastIndexOf(".")>0?img.substring(img.lastIndexOf(".")):null; nfix = StringUtils.defaultString(nfix,".jpg"); String fileName = UUID.randomUUID() + nfix; String tempFileName = nowDate + "/" + fileName; String key =folder+ tempFileName;// æä»¶å FileRecord model = new FileRecord(); model.setIsdeleted(Constants.ZERO); model.setCreateDate(new Date()); model.setName(key); model.setInfo(tempFileName); model.setFolder(folder); model.setUrl(img); model.setObjId(id); model.setType(objType); model.setStatus(Constants.ZERO); }catch (Exception e){ } return null; } @Override public String getOssImgurl(OssModel ossModel, String folder, File f) { server/service/src/main/java/com/doumee/service/business/impl/FileRecordServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,145 @@ package com.doumee.service.business.impl; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.FileRecordMapper; import com.doumee.dao.business.model.FileRecord; import com.doumee.service.business.FileRecordService; 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.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; /** * éä»¶ä¸ä¼ è¿åº¦è¡¨Serviceå®ç° * @author æ±è¹è¹ * @date 2023/09/19 17:30 */ @Service public class FileRecordServiceImpl implements FileRecordService { @Autowired private FileRecordMapper fileRecordMapper; @Override public Integer create(FileRecord fileRecord) { fileRecordMapper.insert(fileRecord); return fileRecord.getId(); } @Override public void deleteById(Integer id) { fileRecordMapper.deleteById(id); } @Override public void delete(FileRecord fileRecord) { UpdateWrapper<FileRecord> deleteWrapper = new UpdateWrapper<>(fileRecord); fileRecordMapper.delete(deleteWrapper); } @Override public void deleteByIdInBatch(List<Integer> ids) { if (CollectionUtils.isEmpty(ids)) { return; } fileRecordMapper.deleteBatchIds(ids); } @Override public void updateById(FileRecord fileRecord) { fileRecordMapper.updateById(fileRecord); } @Override public void updateByIdInBatch(List<FileRecord> fileRecords) { if (CollectionUtils.isEmpty(fileRecords)) { return; } for (FileRecord fileRecord: fileRecords) { this.updateById(fileRecord); } } @Override public FileRecord findById(Integer id) { return fileRecordMapper.selectById(id); } @Override public FileRecord findOne(FileRecord fileRecord) { QueryWrapper<FileRecord> wrapper = new QueryWrapper<>(fileRecord); return fileRecordMapper.selectOne(wrapper); } @Override public List<FileRecord> findList(FileRecord fileRecord) { QueryWrapper<FileRecord> wrapper = new QueryWrapper<>(fileRecord); return fileRecordMapper.selectList(wrapper); } @Override public PageData<FileRecord> findPage(PageWrap<FileRecord> pageWrap) { IPage<FileRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<FileRecord> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(FileRecord::getId, pageWrap.getModel().getId()); } if (pageWrap.getModel().getCreator() != null) { queryWrapper.lambda().eq(FileRecord::getCreator, pageWrap.getModel().getCreator()); } if (pageWrap.getModel().getCreateDate() != null) { queryWrapper.lambda().ge(FileRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); queryWrapper.lambda().le(FileRecord::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); } if (pageWrap.getModel().getEditor() != null) { queryWrapper.lambda().eq(FileRecord::getEditor, pageWrap.getModel().getEditor()); } if (pageWrap.getModel().getEditDate() != null) { queryWrapper.lambda().ge(FileRecord::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); queryWrapper.lambda().le(FileRecord::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); } if (pageWrap.getModel().getIsdeleted() != null) { queryWrapper.lambda().eq(FileRecord::getIsdeleted, pageWrap.getModel().getIsdeleted()); } if (pageWrap.getModel().getName() != null) { queryWrapper.lambda().eq(FileRecord::getName, pageWrap.getModel().getName()); } if (pageWrap.getModel().getInfo() != null) { queryWrapper.lambda().eq(FileRecord::getInfo, pageWrap.getModel().getInfo()); } if (pageWrap.getModel().getObjId() != null) { queryWrapper.lambda().eq(FileRecord::getObjId, pageWrap.getModel().getObjId()); } if (pageWrap.getModel().getType() != null) { queryWrapper.lambda().eq(FileRecord::getType, pageWrap.getModel().getType()); } if (pageWrap.getModel().getFolder() != null) { queryWrapper.lambda().eq(FileRecord::getFolder, pageWrap.getModel().getFolder()); } if (pageWrap.getModel().getStatus() != null) { queryWrapper.lambda().eq(FileRecord::getStatus, pageWrap.getModel().getStatus()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(fileRecordMapper.selectPage(page, queryWrapper)); } @Override public long count(FileRecord fileRecord) { QueryWrapper<FileRecord> wrapper = new QueryWrapper<>(fileRecord); return fileRecordMapper.selectCount(wrapper); } } server/service/src/main/resources/mappers/FileRecordMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,36 @@ <?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.doumee.dao.business.FileRecordMapper"> <insert id="insertBatch" > insert into file_record( `CREATOR`, `CREATE_DATE`, `EDITOR`, `EDIT_DATE`, `ISDELETED`, `NAME`, `INFO`, `STATUS`, `TYPE`, `OBJ_ID`, `FOLDER`, `URL` ) values <foreach collection="list" separator="," item="item"> (#{item.creator} ,#{item.createDate} ,#{item.editor} ,#{item.editDate} ,#{item.isdeleted} ,#{item.name} ,#{item.info} ,#{item.status} ,#{item.objId} ,#{item.type} ,#{item.folder} ,#{item.url} </foreach> </insert> </mapper>