From 5de7e6e552bfceb3d5c4dc28482833150e37b49e Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 17 一月 2024 15:09:48 +0800
Subject: [PATCH] 调整
---
server/service/src/main/java/com/doumee/dao/business/model/Solutions.java | 3
server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java | 26 ++++++
server/service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java | 19 ++++
server/service/src/main/java/com/doumee/dao/business/model/Company.java | 7 +
server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java | 30 +++++-
server/service/src/main/java/com/doumee/service/business/impl/InsuranceServiceImpl.java | 19 +++-
server/company/src/main/java/com/doumee/api/business/CompanyController.java | 9 ++
server/service/src/main/java/com/doumee/dao/business/CompanyPermissionMapper.java | 3
server/service/src/main/java/com/doumee/dao/business/join/SolutionWorktypeJoinMapper.java | 13 +++
server/service/src/main/java/com/doumee/service/business/impl/CompanyPermissionServiceImpl.java | 43 ++++++++++
server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java | 4 +
server/company/src/main/java/com/doumee/api/business/CompanyPermissionController.java | 8 +
server/service/src/main/java/com/doumee/dao/business/model/SolutionWorktype.java | 4 +
13 files changed, 174 insertions(+), 14 deletions(-)
diff --git a/server/company/src/main/java/com/doumee/api/business/CompanyController.java b/server/company/src/main/java/com/doumee/api/business/CompanyController.java
index 66b1143..643b271 100644
--- a/server/company/src/main/java/com/doumee/api/business/CompanyController.java
+++ b/server/company/src/main/java/com/doumee/api/business/CompanyController.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.Company;
import com.doumee.service.business.CompanyService;
import io.swagger.annotations.Api;
@@ -71,6 +72,14 @@
@PostMapping("/page")
@RequiresPermissions("business:company:query")
public ApiResponse<PageData<Company>> findPage (@RequestBody PageWrap<Company> pageWrap) {
+ //鏉冮檺鑼冨洿鍐�
+ return ApiResponse.success(companyService.findPage(pageWrap));
+ }
+ @ApiOperation("鏌ヨ鍏ㄩ儴鏁版嵁(璐﹀彿鍒嗛厤浼佷笟浣跨敤)")
+ @PostMapping("/pageAll")
+ @RequiresPermissions("business:companypermission:create")
+ public ApiResponse<PageData<Company>> findPageAll (@RequestBody PageWrap<Company> pageWrap) {
+ pageWrap.getModel().setQueryFlag(Constants.ONE);//鏌ヨ鍏ㄩ儴
return ApiResponse.success(companyService.findPage(pageWrap));
}
diff --git a/server/company/src/main/java/com/doumee/api/business/CompanyPermissionController.java b/server/company/src/main/java/com/doumee/api/business/CompanyPermissionController.java
index 3eea3cc..b2db3d6 100644
--- a/server/company/src/main/java/com/doumee/api/business/CompanyPermissionController.java
+++ b/server/company/src/main/java/com/doumee/api/business/CompanyPermissionController.java
@@ -31,7 +31,7 @@
private CompanyPermissionService companyPermissionService;
@PreventRepeat
- @ApiOperation("鏂板缓")
+ @ApiOperation("璐﹀彿鍒嗛厤浼佷笟鏉冮檺")
@PostMapping("/create")
@RequiresPermissions("business:companypermission:create")
public ApiResponse create(@RequestBody CompanyPermission companyPermission) {
@@ -73,6 +73,12 @@
public ApiResponse<PageData<CompanyPermission>> findPage (@RequestBody PageWrap<CompanyPermission> pageWrap) {
return ApiResponse.success(companyPermissionService.findPage(pageWrap));
}
+ @ApiOperation("鏌ヨ鍏ㄩ儴")
+ @PostMapping("/list")
+ @RequiresPermissions("business:companypermission:query")
+ public ApiResponse<List<CompanyPermission>> findList(@RequestBody CompanyPermission pageWrap) {
+ return ApiResponse.success(companyPermissionService.findList(pageWrap));
+ }
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
diff --git a/server/service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java b/server/service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java
new file mode 100644
index 0000000..baabea5
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java
@@ -0,0 +1,19 @@
+package com.doumee.config.mybatis;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.core.injector.AbstractMethod;
+import com.baomidou.mybatisplus.extension.injector.methods.InsertBatchSomeColumn;
+import com.github.yulichang.injector.MPJSqlInjector;
+
+import java.util.List;
+
+public class EasySqlInjector extends MPJSqlInjector {
+ @Override
+ public List<AbstractMethod> getMethodList(Class<?> mapperClass ) {
+ // 娉ㄦ剰锛氭SQL娉ㄥ叆鍣ㄧ户鎵夸簡DefaultSqlInjector(榛樿娉ㄥ叆鍣�)锛岃皟鐢ㄤ簡DefaultSqlInjector鐨刧etMethodList鏂规硶锛屼繚鐣欎簡mybatis-plus鐨勮嚜甯︽柟娉�
+ List<AbstractMethod> methodList = super.getMethodList(mapperClass);
+ methodList.add(new InsertBatchSomeColumn(i -> i.getFieldFill() != FieldFill.UPDATE));
+ return methodList;
+ }
+
+}
\ No newline at end of file
diff --git a/server/service/src/main/java/com/doumee/dao/business/CompanyPermissionMapper.java b/server/service/src/main/java/com/doumee/dao/business/CompanyPermissionMapper.java
index ccb7976..ef6e91f 100644
--- a/server/service/src/main/java/com/doumee/dao/business/CompanyPermissionMapper.java
+++ b/server/service/src/main/java/com/doumee/dao/business/CompanyPermissionMapper.java
@@ -3,10 +3,13 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.CompanyPermission;
+import java.util.List;
+
/**
* @author 姹熻箘韫�
* @date 2024/01/16 10:03
*/
public interface CompanyPermissionMapper extends BaseMapper<CompanyPermission> {
+ void insertBatchSomeColumn(List<CompanyPermission> list);
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/join/SolutionWorktypeJoinMapper.java b/server/service/src/main/java/com/doumee/dao/business/join/SolutionWorktypeJoinMapper.java
new file mode 100644
index 0000000..a532752
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/join/SolutionWorktypeJoinMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business.join;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.SolutionWorktype;
+import com.github.yulichang.base.mapper.MPJJoinMapper;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/01/16 10:03
+ */
+public interface SolutionWorktypeJoinMapper extends MPJJoinMapper<SolutionWorktype> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Company.java b/server/service/src/main/java/com/doumee/dao/business/model/Company.java
index 67ac5cd..a46d1f1 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Company.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Company.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;
@@ -115,5 +116,11 @@
@ExcelColumn(name="鐢靛瓙绛捐璇佹椂闂�")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date signDate;
+ @ApiModelProperty(value = "鏌ヨ杈ㄨ瘑 0鏉冮檺鑼冨洿鍐� 1鍏ㄩ儴")
+ @TableField(exist = false)
+ private int queryFlag ;
+ @ApiModelProperty(value = "鏄惁鎷ユ湁鏉冮檺 0鏃� 1鏈�")
+ @TableField(exist = false)
+ private int hasPerimission ;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java b/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java
index 70c7441..e293f39 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java
@@ -9,6 +9,7 @@
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
+import java.util.List;
/**
* 绠$悊鍛樼鐞嗕紒涓氭潈闄�
@@ -58,5 +59,8 @@
@ApiModelProperty(value = "鐢ㄦ埛缂栫爜", example = "1")
@ExcelColumn(name="鐢ㄦ埛缂栫爜")
private Integer userId;
+ @ApiModelProperty(value = "浼佷笟缂栫爜闆嗗悎", example = "1")
+ @ExcelColumn(name="浼佷笟缂栫爜闆嗗悎")
+ private List<Integer> companyIdList;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/SolutionWorktype.java b/server/service/src/main/java/com/doumee/dao/business/model/SolutionWorktype.java
index f33fa6e..6cf2190 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/SolutionWorktype.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/SolutionWorktype.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;
@@ -66,5 +67,8 @@
@ApiModelProperty(value = "宸ョ缂栫爜锛堝叧鑱攚orktype锛�", example = "1")
@ExcelColumn(name="宸ョ缂栫爜锛堝叧鑱攚orktype锛�")
private Integer worktypeId;
+ @ApiModelProperty(value = "宸ョ鍚嶇О", example = "1")
+ @TableField(exist = false)
+ private String worktypeName;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java b/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
index 59d6ce2..fb0f70a 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
@@ -152,6 +152,9 @@
@ApiModelProperty(value = "宸ョ缂栫爜闆嗗悎", example = "1")
@TableField(exist = false)
private List<Integer> worktypeIdList;
+ @ApiModelProperty(value = "宸ョ鍏宠仈闆嗗悎", example = "1")
+ @TableField(exist = false)
+ private List<SolutionWorktype> worktypeList;
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyPermissionServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyPermissionServiceImpl.java
index f2cf034..4229d86 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyPermissionServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyPermissionServiceImpl.java
@@ -1,10 +1,17 @@
package com.doumee.service.business.impl;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
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.CompanyMapper;
import com.doumee.dao.business.CompanyPermissionMapper;
+import com.doumee.dao.business.model.Company;
import com.doumee.dao.business.model.CompanyPermission;
+import com.doumee.dao.system.SystemUserMapper;
+import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.CompanyPermissionService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -14,6 +21,8 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
+import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
/**
@@ -26,10 +35,42 @@
@Autowired
private CompanyPermissionMapper companyPermissionMapper;
+ @Autowired
+ private SystemUserMapper systemUserMapper;
+ @Autowired
+ private CompanyMapper companyMapper;
@Override
public Integer create(CompanyPermission companyPermission) {
- companyPermissionMapper.insert(companyPermission);
+ if(companyPermission.getUserId() == null || companyPermission.getCompanyIdList() == null || companyPermission.getCompanyIdList().size()==0){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ SystemUser user =systemUserMapper.selectById(companyPermission.getUserId());
+ if(user == null || (user.getDeleted() !=null && user.getDeleted())){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛淇℃伅涓嶅瓨鍦紝璇峰皾璇曞埛鏂伴〉闈㈤噸璇曪紒");
+ }
+ List<Company> companieList = companyMapper.selectList(new QueryWrapper<Company>().lambda()
+ .in(Company::getId,companyPermission.getCompanyIdList())
+ .eq(Company::getIsdeleted, Constants.ZERO));
+
+ if(companieList == null || companieList.size() == 0){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨鏈夋晥浼佷笟锛岃灏濊瘯鍒锋柊椤甸潰閲嶈瘯锛�");
+ }
+ Date date = new Date();
+ List<CompanyPermission> list = new ArrayList<>();
+ for(Company c : companieList){
+ CompanyPermission model = new CompanyPermission();
+ model.setCompanyId(c.getId());
+ model.setIsdeleted(Constants.ZERO);
+ model.setIsdeleted(Constants.ZERO);
+ model.setCreator(user.getId());
+ model.setUserId(companyPermission.getUserId());
+ model.setCreateDate(date);
+ list.add(model);
+ }
+ //鍒櫎鍘熸湁鐨勶紝鍦ㄦ壒閲忔彃鍏ユ柊鐨�
+ companyPermissionMapper.delete(new QueryWrapper<CompanyPermission>().lambda().eq(CompanyPermission::getUserId,companyPermission.getUserId()));
+ companyPermissionMapper.insertBatchSomeColumn(list);
return companyPermission.getId();
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
index 83d3f76..0204f3e 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -1,15 +1,23 @@
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.CompanyMapper;
+import com.doumee.dao.business.CompanyPermissionMapper;
import com.doumee.dao.business.model.Company;
+import com.doumee.dao.business.model.CompanyPermission;
+import com.doumee.dao.business.model.Insurance;
import com.doumee.service.business.CompanyService;
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.util.CollectionUtils;
@@ -26,9 +34,12 @@
@Autowired
private CompanyMapper companyMapper;
+ @Autowired
+ private CompanyPermissionMapper companyPermissionMapper;
@Override
public Integer create(Company company) {
+
companyMapper.insert(company);
return company.getId();
}
@@ -54,6 +65,10 @@
@Override
public void updateById(Company company) {
+ Company model = findById(company.getId());
+ if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) ){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY );
+ }
companyMapper.updateById(company);
}
@@ -89,6 +104,15 @@
IPage<Company> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
QueryWrapper<Company> queryWrapper = new QueryWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
+ pageWrap.getModel().setIsdeleted(Constants.ZERO);
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(pageWrap.getModel().getQueryFlag() == 0){
+ //鍙兘鐪嬫潈闄愯寖鍥村唴
+ queryWrapper.exists("select b.id from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id");
+ } else if (pageWrap.getModel().getQueryFlag() == 1) {
+ //鏌ヨ鏄惁鏈夋煡鐪嬫瑠闄�
+ queryWrapper.select("*,(select count(1) from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission");
+ }
if (pageWrap.getModel().getId() != null) {
queryWrapper.lambda().eq(Company::getId, pageWrap.getModel().getId());
}
@@ -110,7 +134,7 @@
queryWrapper.lambda().eq(Company::getIsdeleted, pageWrap.getModel().getIsdeleted());
}
if (pageWrap.getModel().getName() != null) {
- queryWrapper.lambda().eq(Company::getName, pageWrap.getModel().getName());
+ queryWrapper.lambda().like(Company::getName, pageWrap.getModel().getName());
}
if (pageWrap.getModel().getRemark() != null) {
queryWrapper.lambda().eq(Company::getRemark, pageWrap.getModel().getRemark());
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceServiceImpl.java
index 26ae0b7..2bc2611 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceServiceImpl.java
@@ -71,6 +71,7 @@
return insurance.getId();
}
private void dealWorkTypeData(Insurance insurance, Insurance newModel, List<Worktype> worktypeList,boolean isNew) {
+ int num=0;
for(Worktype w : worktypeList) {
//鍩虹鐗堟湰
w.setInsuranceId(insurance.getId());
@@ -80,6 +81,7 @@
w.setDataType(insurance.getDataType());
w.setStatus(Constants.ZERO);
w.setVersion(insurance.getVersion());
+ w.setSortnum(num++);
worktypeMapper.insert(w);
//鍘嗗彶鐗堟湰鐨勫伐绉嶄俊鎭�
@@ -89,6 +91,7 @@
newType.setBaseId(w.getId());
newType.setDataType(Constants.ONE);
newType.setVersion(newModel.getVersion());
+ w.setSortnum(num++);
worktypeMapper.insert(newType);
}
}
@@ -159,7 +162,6 @@
@Override
public void updateById(Insurance 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)){
@@ -167,7 +169,7 @@
}
//鏁版嵁鏈夋晥鎬ф牎楠�
initCreateParam(insurance);
-
+ LoginUserInfo user= (LoginUserInfo)SecurityUtils.getSubject().getPrincipal();
Insurance updateModel = new Insurance();
updateModel.setEditor(user.getId());
updateModel.setName(insurance.getName());
@@ -241,7 +243,16 @@
@Override
public Insurance findById(Integer id) {
- return insuranceMapper.selectById(id);
+ Insurance model = insuranceMapper.selectById(id);
+ if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY );
+ }
+ List<Worktype> worktypeList = worktypeMapper.selectList(new QueryWrapper<Worktype>().lambda()
+ .eq(Worktype::getInsuranceId,id)
+ .eq(Worktype::getIsdeleted,Constants.ZERO)
+ .orderByAsc(Worktype::getSortnum));
+ model.setWorktypeList(worktypeList);
+ return model;
}
@Override
@@ -285,7 +296,7 @@
queryWrapper.lambda().eq(Insurance::getIsdeleted, pageWrap.getModel().getIsdeleted());
}
if (pageWrap.getModel().getName() != null) {
- queryWrapper.lambda().eq(Insurance::getName, pageWrap.getModel().getName());
+ queryWrapper.lambda().like(Insurance::getName, pageWrap.getModel().getName());
}
if (pageWrap.getModel().getRemark() != null) {
queryWrapper.lambda().eq(Insurance::getRemark, pageWrap.getModel().getRemark());
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
index b04d642..0715696 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -11,12 +11,14 @@
import com.doumee.dao.business.SolutionWorktypeMapper;
import com.doumee.dao.business.SolutionsMapper;
import com.doumee.dao.business.WorktypeMapper;
+import com.doumee.dao.business.join.SolutionWorktypeJoinMapper;
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 com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.BeanUtils;
@@ -42,7 +44,7 @@
@Autowired
private WorktypeMapper worktypeMapper;
@Autowired
- private SolutionWorktypeMapper solutionWorktypeMapper;
+ private SolutionWorktypeJoinMapper solutionWorktypeJoinMapper;
@Autowired
private InsuranceMapper insuranceMapper;
@@ -87,7 +89,7 @@
if(worktypeList==null ||worktypeIdList.size()==0){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝宸ョ淇℃伅閫夋嫨鏈夎锛岃灏濊瘯鍒锋柊椤甸潰閲嶈瘯~" );
}
-
+ int num =0;
for(Worktype type : worktypeList) {
//鍩虹鐗堟湰
SolutionWorktype w = new SolutionWorktype();
@@ -97,13 +99,14 @@
w.setCreateDate(solutions.getCreateDate());
w.setWorktypeId(type.getId());
w.setStatus(Constants.ZERO);
- solutionWorktypeMapper.insert(w);
+ w.setSortnum(num++);
+ solutionWorktypeJoinMapper.insert(w);
//鍘嗗彶鐗堟湰鐨勫伐绉嶄俊鎭�
SolutionWorktype newType = new SolutionWorktype();
BeanUtils.copyProperties(w, newType);
newType.setSolutionId(newModel.getId());
- solutionWorktypeMapper.insert(newType);
+ solutionWorktypeJoinMapper.insert(newType);
}
}
@@ -172,7 +175,7 @@
solutionsMapper.insert(newModel);
//鍒犻櫎鎵�鏈夊伐绉嶆暟鎹�
- solutionWorktypeMapper.delete(new UpdateWrapper<SolutionWorktype>()
+ solutionWorktypeJoinMapper.delete(new UpdateWrapper<SolutionWorktype>()
.lambda()
.eq(SolutionWorktype::getSolutionId,solutions.getId())
);
@@ -222,7 +225,20 @@
}
@Override
public Solutions findById(Integer id) {
- return solutionsMapper.selectById(id);
+ Solutions model = solutionsMapper.selectById(id);
+ if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY );
+ }
+ MPJLambdaWrapper<SolutionWorktype> wrapper = new MPJLambdaWrapper<>();
+ wrapper.selectAll(SolutionWorktype.class);
+ wrapper.selectAs(Worktype::getName,SolutionWorktype::getWorktypeName);
+ wrapper.leftJoin(Worktype.class,Worktype::getId,SolutionWorktype::getWorktypeId);
+ wrapper.eq(SolutionWorktype::getSolutionId,id);
+ wrapper.eq(SolutionWorktype::getIsdeleted,Constants.ZERO);
+ wrapper.orderByAsc(SolutionWorktype::getSortnum);
+ List<SolutionWorktype> worktypeList = solutionWorktypeJoinMapper.selectJoinList(SolutionWorktype.class,wrapper);
+ model.setWorktypeList(worktypeList);
+ return model;
}
@Override
@@ -266,7 +282,7 @@
queryWrapper.lambda().eq(Solutions::getIsdeleted, pageWrap.getModel().getIsdeleted());
}
if (pageWrap.getModel().getName() != null) {
- queryWrapper.lambda().eq(Solutions::getName, pageWrap.getModel().getName());
+ queryWrapper.lambda().like(Solutions::getName, pageWrap.getModel().getName());
}
if (pageWrap.getModel().getRemark() != null) {
queryWrapper.lambda().eq(Solutions::getRemark, pageWrap.getModel().getRemark());
--
Gitblit v1.9.3