From 5bfa6ac57681f0b07649c2f1a54d6afbd3dbc1ba Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期三, 20 三月 2024 11:37:28 +0800
Subject: [PATCH] 提交一把
---
server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java | 15 ++++++++++++++-
server/service/src/main/java/com/doumee/config/shiro/ShiroRealm.java | 1 +
server/service/src/main/java/com/doumee/core/model/LoginUserInfo.java | 7 +++++--
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java | 10 ++++++++++
company/src/views/business/insuranceApplyShop.vue | 2 +-
5 files changed, 31 insertions(+), 4 deletions(-)
diff --git a/company/src/views/business/insuranceApplyShop.vue b/company/src/views/business/insuranceApplyShop.vue
index 1392c92..32b2380 100644
--- a/company/src/views/business/insuranceApplyShop.vue
+++ b/company/src/views/business/insuranceApplyShop.vue
@@ -114,7 +114,7 @@
createTimeE: '',
time: [],
baseSolutionId: '',
- solutionType: 1,
+ solutionType: null,
companyId: '',
statusCollect: ''
},
diff --git a/server/service/src/main/java/com/doumee/config/shiro/ShiroRealm.java b/server/service/src/main/java/com/doumee/config/shiro/ShiroRealm.java
index bcacf86..00a3c2c 100644
--- a/server/service/src/main/java/com/doumee/config/shiro/ShiroRealm.java
+++ b/server/service/src/main/java/com/doumee/config/shiro/ShiroRealm.java
@@ -121,6 +121,7 @@
user.getCompanyIdList().add(cc.getCompanyId());
}
}
+ permissions = systemPermissionService.findByUserId(user.getId());
}else{
Company company = companyService.findById(user.getCompanyId());
if(company == null){
diff --git a/server/service/src/main/java/com/doumee/core/model/LoginUserInfo.java b/server/service/src/main/java/com/doumee/core/model/LoginUserInfo.java
index 4b4ec6f..e73d456 100644
--- a/server/service/src/main/java/com/doumee/core/model/LoginUserInfo.java
+++ b/server/service/src/main/java/com/doumee/core/model/LoginUserInfo.java
@@ -61,9 +61,12 @@
}
loginUserInfo.setRoles(rs);
// 璁剧疆鏉冮檺淇℃伅
+
List<String> pms = new ArrayList<>();
- for (SystemPermission permission : permissions) {
- pms.add(permission.getCode());
+ if(permissions!=null){
+ for (SystemPermission permission : permissions) {
+ pms.add(permission.getCode());
+ }
}
loginUserInfo.setPermissions(pms);
loginUserInfo.setCompanyIdList(user.getCompanyIdList());
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
index 3a9949f..1398edb 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -1385,6 +1385,8 @@
@Override
public PageData<ApplyChange> findPage(PageWrap<ApplyChange> pageWrap) {
+
+ LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
IPage<ApplyChange> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
MPJLambdaWrapper<ApplyChange> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
@@ -1392,13 +1394,13 @@
queryWrapper
.selectAll(ApplyChange.class)
.selectAs(InsuranceApply::getCode,ApplyChange::getApplyCode)
+ .selectAs( Solutions::getType,InsuranceApply::getSolutionType)
.select("( select count(1) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID and ad.TYPE = 0 )",ApplyChange::getAddNum)
.select("( select count(1) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID and ad.TYPE = 1 )",ApplyChange::getDelNum)
.select("( select count(1) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID and ad.TYPE = 2 )",ApplyChange::getChangeNum)
.select("( select ifnull(sum(ad.FEE),0) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID )",ApplyChange::getChangeMoney)
.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId)
.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
- .leftJoin(Solutions.class,Solutions::getType,InsuranceApply::getSolutionType)
.eq(!Objects.isNull(model.getType()),ApplyChange::getType,model.getType())
.eq(!Objects.isNull(model.getStatus())&&!model.getStatus().equals(Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey()),ApplyChange::getStatus,model.getStatus())
.in(!Objects.isNull(model.getStatus())&&model.getStatus().equals(Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey()),ApplyChange::getStatus,
@@ -1409,6 +1411,17 @@
.eq(!Objects.isNull(model.getSolutionsId()),ApplyChange::getSolutionsId,model.getSolutionsId())
.ge(StringUtils.isNotBlank(model.getCreateDateS()),ApplyChange::getCreateDate, model.getCreateDateS()+" 00:00:00" )
.le(StringUtils.isNotBlank(model.getCreateDateE()),ApplyChange::getCreateDate, model.getCreateDateE()+" 23:59:59" );
+ if(loginUserInfo.getType().equals(Constants.TWO)){
+ //濡傛灉鏄晢鎴锋煡鐪�
+ if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType() ==0){
+ queryWrapper.exists("select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t1.company_id and cs.shop_id="+loginUserInfo.getCompanyId());
+ }else if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType() ==1){
+ queryWrapper.eq(Solutions::getShopId,loginUserInfo.getCompanyId());
+ }else{
+ queryWrapper.apply("((t1.type=0 and exists(select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t1.company_id and cs.shop_id="+loginUserInfo.getCompanyId()+")) or (" +
+ "t2.type=1 and t2.shop_id="+loginUserInfo.getCompanyId()+"))") ;
+ }
+ }
for(PageWrap.SortData sortData: pageWrap.getSorts()) {
if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
index ab2102e..e12b11b 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -1194,6 +1194,16 @@
//浼佷笟浜哄憳鏌ョ湅鏈紒涓氭暟鎹�
if(loginUserInfo.getType().equals(Constants.ONE)){
queryWrapper.eq(InsuranceApply::getCompanyId, loginUserInfo.getCompanyId());
+ }else if(loginUserInfo.getType().equals(Constants.TWO)){
+ //濡傛灉鏄晢鎴锋煡鐪�
+ if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType() ==0){
+ queryWrapper.exists("select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t.company_id and cs.shop_id="+loginUserInfo.getCompanyId());
+ }else if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType() ==1){
+ queryWrapper.eq(Solutions::getShopId,loginUserInfo.getCompanyId());
+ }else{
+ queryWrapper.apply("((t1.type=0 and exists(select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t.company_id and cs.shop_id="+loginUserInfo.getCompanyId()+")) or (" +
+ "t1.type=1 and t1.shop_id="+loginUserInfo.getCompanyId()+"))") ;
+ }
}else{
if(loginUserInfo.getCompanyIdList()!=null && loginUserInfo.getCompanyIdList().size()>0){
queryWrapper.in(InsuranceApply::getCompanyId, loginUserInfo.getCompanyIdList());
--
Gitblit v1.9.3