server/company/src/main/java/com/doumee/api/business/InsuranceController.java
@@ -67,6 +67,14 @@ return ApiResponse.success(null); } @ApiOperation("å¯ç¨ç¦ç¨") @PostMapping("/updateStatus") @RequiresPermissions("business:insurance:update") public ApiResponse updateStatus(@RequestBody Insurance insurance) { insuranceService.updateStatus(insurance); return ApiResponse.success(null); } @ApiOperation("å页æ¥è¯¢") @PostMapping("/page") @RequiresPermissions("business:insurance:query") @@ -74,6 +82,13 @@ return ApiResponse.success(insuranceService.findPage(pageWrap)); } @ApiOperation("æ¥è¯¢å表") @PostMapping("/list") @RequiresPermissions("business:insurance:query") public ApiResponse<List<Insurance>> findList (@RequestBody Insurance pageWrap) { return ApiResponse.success(insuranceService.findList(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") @RequiresPermissions("business:insurance:exportExcel") server/company/src/main/java/com/doumee/api/business/SolutionsController.java
@@ -73,6 +73,12 @@ public ApiResponse<PageData<Solutions>> findPage (@RequestBody PageWrap<Solutions> pageWrap) { return ApiResponse.success(solutionsService.findPage(pageWrap)); } @ApiOperation("å表æ¥è¯¢") @PostMapping("/list") @RequiresPermissions("business:solutions:query") public ApiResponse<List<Solutions>> findList (@RequestBody Solutions pageWrap) { return ApiResponse.success(solutionsService.findList(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") server/company/src/main/java/com/doumee/api/business/WorktypeController.java
@@ -6,6 +6,7 @@ import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.Worktype; import com.doumee.service.business.WorktypeService; import io.swagger.annotations.Api; @@ -73,6 +74,12 @@ public ApiResponse<PageData<Worktype>> findPage (@RequestBody PageWrap<Worktype> pageWrap) { return ApiResponse.success(worktypeService.findPage(pageWrap)); } @ApiOperation("æ ¹æ®ä¿é©æ¹æ¡ç¼ç æ¥è¯¢") @PostMapping("/list") @RequiresPermissions("business:worktype:query") public ApiResponse<List<Worktype>> findList ( Worktype model) { return ApiResponse.success(worktypeService.findList(model)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") server/db/business.brand.permissions.sql
ÎļþÒÑɾ³ý server/db/business.cate_attr.permissions.sql
ÎļþÒÑɾ³ý server/db/business.cate_budget.permissions.sql
ÎļþÒÑɾ³ý server/db/business.cate_param.permissions.sql
ÎļþÒÑɾ³ý server/db/business.category.permissions.sql
ÎļþÒÑɾ³ý server/db/business.goods.permissions.sql
ÎļþÒÑɾ³ý server/db/business.goods_param.permissions.sql
ÎļþÒÑɾ³ý server/db/business.multifile.permissions.sql
ÎļþÒÑɾ³ý server/db/cate_param_select.permissions.sql
ÎļþÒÑɾ³ý server/platform/src/main/java/com/doumee/api/business/SolutionsController.java
@@ -67,6 +67,14 @@ return ApiResponse.success(null); } @ApiOperation("ç¦ç¨å¯ç¨") @PostMapping("/updateStatus") @RequiresPermissions("business:solutions:update") public ApiResponse updateStatus(@RequestBody Solutions solutions) { solutionsService.updateStatus(solutions); return ApiResponse.success(null); } @ApiOperation("å页æ¥è¯¢") @PostMapping("/page") @RequiresPermissions("business:solutions:query") server/service/src/main/java/com/doumee/dao/business/model/Insurance.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; @@ -9,6 +10,7 @@ import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; import java.util.List; /** * ä¿é©å ¬å¸ä¿¡æ¯è¡¨ @@ -67,12 +69,15 @@ @ExcelColumn(name="çæ¬å·") private String version; @ApiModelProperty(value = "è®°å½ç±»å 0åºè¡¨æ°æ® 1åå²çæ¬æ°æ®", example = "1") @ExcelColumn(name="è®°å½ç±»å 0åºè¡¨æ°æ® 1åå²çæ¬æ°æ®") @ApiModelProperty(value = "è®°å½ç±»å 0åºè¡¨æ°æ® 1åå²çæ¬æ°æ® 2ææ°åå²çæ¬", example = "1") @ExcelColumn(name="è®°å½ç±»å 0åºè¡¨æ°æ® 1åå²çæ¬æ°æ® 2ææ°åå²çæ¬") private Integer dataType; @ApiModelProperty(value = "åºè¡¨ç¼ç ï¼èªå ³èï¼", example = "1") @ExcelColumn(name="åºè¡¨ç¼ç ï¼èªå ³èï¼") private Integer baseId; @ApiModelProperty(value = "å·¥ç§éå", example = "1") @TableField(exist = false) private List<Worktype> worktypeList; } server/service/src/main/java/com/doumee/dao/business/model/Solutions.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; @@ -10,6 +11,7 @@ import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; import java.math.BigDecimal; import java.util.List; /** * ä¿é©æ¹æ¡ä¿¡æ¯è¡¨ @@ -92,9 +94,9 @@ @ExcelColumn(name="ä¿é©æ¶é´åä½0天 1åæ 2æ 3å¹´") private Integer timeUnit; @ApiModelProperty(value = "弿·è¡") @ExcelColumn(name="弿·è¡") private String insureCycle; @ApiModelProperty(value = "æä¿å¨æ") @ExcelColumn(name="æä¿å¨æ") private Integer insureCycle; @ApiModelProperty(value = "æå°æä¿å¨ææ¶é´åä½0天 1åæ 2æ 3å¹´", example = "1") @ExcelColumn(name="æå°æä¿å¨ææ¶é´åä½0天 1åæ 2æ 3å¹´") @@ -111,6 +113,9 @@ @ApiModelProperty(value = "æ¥æ¶æä»¶é®ç®±") @ExcelColumn(name="æ¥æ¶æä»¶é®ç®±") private String email; @ApiModelProperty(value = "æ¿å å ¬å¸") @ExcelColumn(name="æ¿å å ¬å¸") private String companyName; @ApiModelProperty(value = "ç¹å«çº¦å®") @ExcelColumn(name="ç¹å«çº¦å®") @@ -143,4 +148,10 @@ @ExcelColumn(name="åºè¡¨ç¼ç ï¼èªå ³èï¼") private Integer baseId; @ApiModelProperty(value = "å·¥ç§ç¼ç éå", example = "1") @TableField(exist = false) private List<Integer> worktypeIdList; } server/service/src/main/java/com/doumee/service/business/InsuranceService.java
@@ -94,4 +94,6 @@ * @return long */ long count(Insurance insurance); void updateStatus(Insurance insurance); } server/service/src/main/java/com/doumee/service/business/SolutionsService.java
@@ -47,6 +47,7 @@ * @param solutions å®ä½å¯¹è±¡ */ void updateById(Solutions solutions); void updateStatus(Solutions solutions); /** * æ¹é䏻鮿´æ° server/service/src/main/java/com/doumee/service/business/impl/InsuranceServiceImpl.java
@@ -1,20 +1,34 @@ package com.doumee.service.business.impl; 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.InsuranceMapper; import com.doumee.dao.business.WorktypeMapper; import com.doumee.dao.business.model.Insurance; import com.doumee.dao.business.model.Worktype; import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.InsuranceService; 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.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.BeanUtils; 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.ArrayList; import java.util.Date; import java.util.List; import java.util.UUID; /** * ä¿é©å ¬å¸ä¿¡æ¯è¡¨Serviceå®ç° @@ -26,22 +40,113 @@ @Autowired private InsuranceMapper insuranceMapper; @Autowired private WorktypeMapper worktypeMapper; @Override @Transactional public Integer create(Insurance insurance) { insuranceMapper.insert(insurance); LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); initCreateParam(insurance);//å·¥ç§æ°æ®æææ§æ£éªï¼å»é¤ç©ºç½è¡æ°æ® insurance.setIsdeleted(Constants.ZERO); insurance.setCreator(user.getId()); insurance.setCreateDate(new Date()); insurance.setVersion(UUID.randomUUID().toString());//çæ¬å· insurance.setDataType(Constants.ZERO); insurance.setStatus(Constants.ZERO); insuranceMapper.insert(insurance);//åºç¡çæ¬ //妿æå·¥ç§ï¼å产çä¸ä¸ªæ°çææåå²çæ¬ ~ Insurance newModel = new Insurance(); BeanUtils.copyProperties(insurance,newModel); newModel.setId(null); newModel.setBaseId(insurance.getId()); newModel.setDataType(Constants.TWO); insuranceMapper.insert(newModel); dealWorkTypeData(insurance,newModel,insurance.getWorktypeList(),true); return insurance.getId(); } private void dealWorkTypeData(Insurance insurance, Insurance newModel, List<Worktype> worktypeList,boolean isNew) { for(Worktype w : worktypeList) { //åºç¡çæ¬ w.setInsuranceId(insurance.getId()); w.setIsdeleted(Constants.ZERO); w.setCreator(newModel.getCreator()); w.setCreateDate(insurance.getCreateDate()); w.setDataType(insurance.getDataType()); w.setStatus(Constants.ZERO); w.setVersion(insurance.getVersion()); worktypeMapper.insert(w); //åå²çæ¬çå·¥ç§ä¿¡æ¯ Worktype newType = new Worktype(); BeanUtils.copyProperties(w, newType); newType.setInsuranceId(newModel.getId()); newType.setBaseId(w.getId()); newType.setDataType(Constants.ONE); newType.setVersion(newModel.getVersion()); worktypeMapper.insert(newType); } } private void initCreateParam(Insurance insurance) { if(StringUtils.isBlank(insurance.getName())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯·è¾å ¥ä¿é©å ¬å¸åç§°ï¼"); } List<Worktype> worktypeList = new ArrayList<>(); if(insurance.getWorktypeList()!=null && insurance.getWorktypeList().size()>0){ for(Worktype w : insurance.getWorktypeList()){ if(StringUtils.isNotBlank(w.getName())){ worktypeList.add(w); } } } if(worktypeList.size()==0){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼å·¥ç§ä¸è½ä¸ºç©ºï¼"); } insurance.setWorktypeList(worktypeList); } @Override public void deleteById(Integer id) { insuranceMapper.deleteById(id); LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); Insurance model = findById(id); if(model == null || !Constants.equalsInteger(model.getDataType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } Insurance update = new Insurance(); update.setIsdeleted(Constants.ZERO); update.setEditDate(new Date()); update.setEditor(user.getId()); update.setId(id); insuranceMapper.updateById(update); //é»è¾å 餿æå·¥ç§æ°æ® worktypeMapper.update(null,new UpdateWrapper<Worktype>() .lambda() .eq(Worktype::getInsuranceId,id) .eq(Worktype::getIsdeleted,Constants.ZERO) .set(Worktype::getIsdeleted,Constants.ONE) ); } @Override public void delete(Insurance insurance) { UpdateWrapper<Insurance> deleteWrapper = new UpdateWrapper<>(insurance); insuranceMapper.delete(deleteWrapper); LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); Insurance model = findById(insurance.getId()); if(model == null || !Constants.equalsInteger(model.getDataType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } Insurance update = new Insurance(); update.setIsdeleted(Constants.ZERO); update.setEditDate(new Date()); update.setId(insurance.getId()); update.setEditor(user.getId()); insuranceMapper.updateById(update); } @Override @@ -54,7 +159,74 @@ @Override public void updateById(Insurance insurance) { insuranceMapper.updateById(insurance); LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); Insurance model = findById(insurance.getId()); if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) || !Constants.equalsInteger(model.getDataType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } //æ°æ®æææ§æ ¡éª initCreateParam(insurance); Insurance updateModel = new Insurance(); updateModel.setEditor(user.getId()); updateModel.setName(insurance.getName()); updateModel.setId(model.getId()); updateModel.setVersion(UUID.randomUUID().toString()); updateModel.setEditDate(new Date()); updateModel.setRemark(insurance.getRemark()); updateModel.setSortnum(insurance.getSortnum()); insuranceMapper.updateById(updateModel); //å¦æä¿®æ¹ï¼å产çä¸ä¸ªæ°çåå²çæ¬ ~ Insurance newModel = new Insurance(); BeanUtils.copyProperties(model,newModel); newModel.setId(null); newModel.setVersion(updateModel.getVersion()); newModel.setCreateDate(new Date()); newModel.setBaseId(insurance.getId()); newModel.setDataType(Constants.TWO); insuranceMapper.insert(newModel); //å 餿æå·¥ç§æ°æ® worktypeMapper.delete(new UpdateWrapper<Worktype>() .lambda() .eq(Worktype::getInsuranceId,insurance.getId()) ); insuranceMapper.update(null,new UpdateWrapper<Insurance>() .lambda() .eq(Insurance::getBaseId,insurance.getId()) .eq(Insurance::getDataType,Constants.TWO) .set(Insurance::getDataType,Constants.ONE) ); //å¤çå·¥ä½ä¿¡æ¯ï¼æ°å¢ææ°çï¼åæ¶äº§çåå²çæ¬ dealWorkTypeData(updateModel,newModel,insurance.getWorktypeList(),false); } @Override public void updateStatus(Insurance insurance){ if(insurance.getId() == null || insurance.getStatus()==null || insurance.getStatus()<0||insurance.getStatus()>1){ throw new BusinessException(ResponseStatus.BAD_REQUEST ); } Insurance model = findById(insurance.getId()); if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) || !Constants.equalsInteger(model.getDataType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } if(Constants.equalsInteger(model.getStatus(),insurance.getStatus())){ //å¦æç¶æä¸åçæ¹åï¼ç´æ¥è¿å return; } LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); //åæ¶æ´æ°åºè¡¨ååå²çæ¬æææ°æ®ç¶æ insuranceMapper.update(null,new UpdateWrapper<Insurance>() .lambda() .and(m -> m.eq(Insurance::getId,model.getId()).or().eq(Insurance::getBaseId,model.getId())) .eq(Insurance::getIsdeleted,Constants.ZERO) .set(Insurance::getEditDate,new Date()) .set(Insurance::getEditor,user.getId()) .set(Insurance::getStatus,insurance.getStatus()) ); } @Override @@ -80,6 +252,7 @@ @Override public List<Insurance> findList(Insurance insurance) { insurance.setIsdeleted(Constants.ZERO); QueryWrapper<Insurance> wrapper = new QueryWrapper<>(insurance); return insuranceMapper.selectList(wrapper); } @@ -89,6 +262,8 @@ IPage<Insurance> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<Insurance> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); pageWrap.getModel().setDataType(Constants.ZERO);//åªéæ©åºè¡¨æ°æ® pageWrap.getModel().setIsdeleted(Constants.ZERO); if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(Insurance::getId, pageWrap.getModel().getId()); } @@ -130,13 +305,15 @@ if (pageWrap.getModel().getBaseId() != null) { queryWrapper.lambda().eq(Insurance::getBaseId, pageWrap.getModel().getBaseId()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { /* for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } }*/ queryWrapper.lambda().orderByAsc(Insurance::getSortnum); return PageData.from(insuranceMapper.selectPage(page, queryWrapper)); } server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -1,20 +1,33 @@ package com.doumee.service.business.impl; 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.InsuranceMapper; import com.doumee.dao.business.SolutionWorktypeMapper; import com.doumee.dao.business.SolutionsMapper; import com.doumee.dao.business.model.Solutions; import com.doumee.dao.business.WorktypeMapper; import com.doumee.dao.business.model.*; import com.doumee.service.business.SolutionsService; 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.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.UUID; /** * ä¿é©æ¹æ¡ä¿¡æ¯è¡¨Serviceå®ç° @@ -26,11 +39,91 @@ @Autowired private SolutionsMapper solutionsMapper; @Autowired private WorktypeMapper worktypeMapper; @Autowired private SolutionWorktypeMapper solutionWorktypeMapper; @Autowired private InsuranceMapper insuranceMapper; @Override public Integer create(Solutions solutions) { solutionsMapper.insert(solutions); LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); initCreateParam(solutions);//å·¥ç§æ°æ®æææ§æ£éªï¼å»é¤ç©ºç½è¡æ°æ® solutions.setIsdeleted(Constants.ZERO); solutions.setCreator(user.getId()); solutions.setCreateDate(new Date()); solutions.setVersion(UUID.randomUUID().toString());//çæ¬å· solutions.setDataType(Constants.ZERO); solutions.setStatus(Constants.ZERO); solutionsMapper.insert(solutions);//åºç¡çæ¬ //妿æå·¥ç§ï¼å产çä¸ä¸ªæ°çææåå²çæ¬ ~ Solutions newModel = new Solutions(); BeanUtils.copyProperties(solutions,newModel); newModel.setId(null); newModel.setBaseId(solutions.getId()); newModel.setDataType(Constants.TWO); solutionsMapper.insert(newModel); dealWorkType(solutions,newModel,solutions.getWorktypeIdList(),true); return solutions.getId(); } private void dealWorkType(Solutions solutions, Solutions newModel, List<Integer> worktypeIdList, boolean b) { Insurance model = insuranceMapper.selectById(solutions.getInsuranceId()); if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) || !Constants.equalsInteger(model.getDataType(),Constants.TWO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼è¯¥ä¿é©å ¬å¸ä¿¡æ¯ä¸åå¨ï¼è¯·å°è¯å·æ°é¡µé¢éè¯~" ); } if( !Constants.equalsInteger(model.getStatus(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼è¯¥ä¿é©å ¬å¸å·²è¢«ï¼è¯·å°è¯å·æ°é¡µé¢éè¯~" ); } List<Worktype> worktypeList = worktypeMapper.selectList(new QueryWrapper<Worktype>().lambda() .eq(Worktype::getInsuranceId,solutions.getInsuranceId()) .eq(Worktype::getIsdeleted,Constants.ZERO) .in(Worktype::getId,worktypeIdList)); if(worktypeList==null ||worktypeIdList.size()==0){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼å·¥ç§ä¿¡æ¯éæ©æè¯¯ï¼è¯·å°è¯å·æ°é¡µé¢éè¯~" ); } for(Worktype type : worktypeList) { //åºç¡çæ¬ SolutionWorktype w = new SolutionWorktype(); w.setSolutionId(solutions.getId()); w.setIsdeleted(Constants.ZERO); w.setCreator(newModel.getCreator()); w.setCreateDate(solutions.getCreateDate()); w.setWorktypeId(type.getId()); w.setStatus(Constants.ZERO); solutionWorktypeMapper.insert(w); //åå²çæ¬çå·¥ç§ä¿¡æ¯ SolutionWorktype newType = new SolutionWorktype(); BeanUtils.copyProperties(w, newType); newType.setSolutionId(newModel.getId()); solutionWorktypeMapper.insert(newType); } } private void initCreateParam(Solutions solutions) { if(StringUtils.isBlank(solutions.getName()) ||solutions.getInsuranceId()==null ||solutions.getWorktypeIdList()==null ||solutions.getWorktypeIdList().size()==0 ||Constants.formatIntegerNum(solutions.getMaxAge()) < 0 ||Constants.formatIntegerNum(solutions.getMinAge()) < 0 ||Constants.formatIntegerNum(solutions.getPriceCycleUnit()) < 0 ||Constants.formatIntegerNum(solutions.getInsureCycle()) < 0 ||Constants.formatIntegerNum(solutions.getInsureCycleUnit()) < 0 || solutions.getMinAge() >solutions.getMaxAge() || Constants.formatBigdecimal(solutions.getPrice()).compareTo(new BigDecimal(0)) !=1 ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } } @Override @@ -54,7 +147,43 @@ @Override public void updateById(Solutions solutions) { LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); Solutions model = findById(solutions.getId()); if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) || !Constants.equalsInteger(model.getDataType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } //æ°æ®æææ§æ ¡éª initCreateParam(solutions); solutions.setEditor(user.getId()); solutions.setVersion(UUID.randomUUID().toString()); solutions.setEditDate(new Date()); solutionsMapper.updateById(solutions); //å¦æä¿®æ¹ï¼å产çä¸ä¸ªæ°çåå²çæ¬ ~ Solutions newModel = new Solutions(); BeanUtils.copyProperties(model,newModel); newModel.setId(null); newModel.setVersion(solutions.getVersion()); newModel.setCreateDate(new Date()); newModel.setBaseId(solutions.getId()); newModel.setDataType(Constants.TWO); solutionsMapper.insert(newModel); //å 餿æå·¥ç§æ°æ® solutionWorktypeMapper.delete(new UpdateWrapper<SolutionWorktype>() .lambda() .eq(SolutionWorktype::getSolutionId,solutions.getId()) ); solutionsMapper.update(null,new UpdateWrapper<Solutions>() .lambda() .eq(Solutions::getBaseId,solutions.getId()) .eq(Solutions::getDataType,Constants.TWO) .set(Solutions::getDataType,Constants.ONE) ); //å¤çå·¥ä½ä¿¡æ¯ï¼æ°å¢ææ°çï¼åæ¶äº§çåå²çæ¬ dealWorkType(solutions,newModel,solutions.getWorktypeIdList(),false); } @Override @@ -66,7 +195,31 @@ this.updateById(solutions); } } @Override public void updateStatus(Solutions solutions){ if(solutions.getId() == null || solutions.getStatus()==null || solutions.getStatus()<0||solutions.getStatus()>1){ throw new BusinessException(ResponseStatus.BAD_REQUEST ); } Solutions model = findById(solutions.getId()); if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) || !Constants.equalsInteger(model.getDataType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } if(Constants.equalsInteger(model.getStatus(),solutions.getStatus())){ //å¦æç¶æä¸åçæ¹åï¼ç´æ¥è¿å return; } LoginUserInfo user= (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); //åæ¶æ´æ°åºè¡¨ååå²çæ¬æææ°æ®ç¶æ solutionsMapper.update(null,new UpdateWrapper<Solutions>() .lambda() .and(m -> m.eq(Solutions::getId,model.getId()).or().eq(Solutions::getBaseId,model.getId())) .eq(Solutions::getIsdeleted,Constants.ZERO) .set(Solutions::getEditDate,new Date()) .set(Solutions::getEditor,user.getId()) .set(Solutions::getStatus,solutions.getStatus()) ); } @Override public Solutions findById(Integer id) { return solutionsMapper.selectById(id); @@ -80,6 +233,7 @@ @Override public List<Solutions> findList(Solutions solutions) { solutions.setIsdeleted(Constants.ZERO); QueryWrapper<Solutions> wrapper = new QueryWrapper<>(solutions); return solutionsMapper.selectList(wrapper); } @@ -89,6 +243,8 @@ IPage<Solutions> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<Solutions> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); pageWrap.getModel().setDataType(Constants.ZERO);//åªéæ©åºè¡¨æ°æ® pageWrap.getModel().setIsdeleted(Constants.ZERO); if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(Solutions::getId, pageWrap.getModel().getId()); } server/service/src/main/java/com/doumee/service/business/impl/WorktypeServiceImpl.java
@@ -2,6 +2,7 @@ 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.WorktypeMapper; import com.doumee.dao.business.model.Worktype; @@ -80,6 +81,7 @@ @Override public List<Worktype> findList(Worktype worktype) { worktype.setIsdeleted(Constants.ZERO); QueryWrapper<Worktype> wrapper = new QueryWrapper<>(worktype); return worktypeMapper.selectList(wrapper); }