|
|
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.ydtech.components.OrderComponents;
|
|
|
import com.ydtech.constants.InsuranceEnum;
|
|
|
import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
|
|
|
+import com.ydtech.constants.sys.SystemConstant;
|
|
|
import com.ydtech.core.page.HttpResult;
|
|
|
import com.ydtech.exception.SystemException;
|
|
|
import com.ydtech.modules.admin.model.SysDept;
|
|
|
@@ -53,10 +54,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.util.ObjectUtils;
|
|
|
|
|
|
import javax.validation.constraints.NotBlank;
|
|
|
-import java.util.Collections;
|
|
|
-import java.util.LinkedHashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -191,18 +189,18 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
String realUserId = userId;//实际跟单业务人默认登录人
|
|
|
boolean daikeFlag = false;//是否代客录单业务
|
|
|
//添加出单员报价的逻辑,
|
|
|
- boolean isCdy=false;//是否出单员标志
|
|
|
+ boolean isCdy = false;//是否出单员标志
|
|
|
if (StringUtils.isNotEmpty(userId)) {
|
|
|
SysUserRole userRole = sysUserRoleService.selectByUserId(userId);
|
|
|
- if(19==userRole.getRoleId()){
|
|
|
- isCdy=true;
|
|
|
+ if (19 == userRole.getRoleId()) {
|
|
|
+ isCdy = true;
|
|
|
}
|
|
|
}
|
|
|
- if(isCdy){
|
|
|
+ if (isCdy) {
|
|
|
//如果是出单员 获取最终实际业务员
|
|
|
SysUser user = sysUserService.getById(realUserId);
|
|
|
- realUserId=user.getOperatorCode();
|
|
|
- }else{
|
|
|
+ realUserId = user.getOperatorCode();
|
|
|
+ } else {
|
|
|
//如果传递的业务归属人且与登录人不一致,则是代客录单业务
|
|
|
if (StringUtils.isNotEmpty(quoteInfoVo.getUserId()) && !userId.equals(quoteInfoVo.getUserId())) {
|
|
|
//实际跟单业务人变更为手工选择的人
|
|
|
@@ -220,7 +218,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
if (daikeFlag) {//当时代客录单业务时,才需要赋值该字段
|
|
|
insOrders.setOperatorid(userId);//赋值代客录单操作人为登录人
|
|
|
}
|
|
|
- if(isCdy){//赋值出单员 操作人为登录人
|
|
|
+ if (isCdy) {//赋值出单员 操作人为登录人
|
|
|
insOrders.setOperatorid(userId);
|
|
|
}
|
|
|
InsOrders insOrders1 = baseMapper.selectById(quoteInfoVo.getOrderNo());
|
|
|
@@ -266,18 +264,25 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
return insOrders;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
@Override
|
|
|
public BasePageResult<InsOrders> queryPageOrder(OrderQueryVo orderQueryVo) {
|
|
|
+
|
|
|
+ // 领导标志
|
|
|
boolean isTeamLeader = false;
|
|
|
- boolean isCdy=false;//是否出单员标志
|
|
|
+ //是否出单员标志
|
|
|
+ boolean isCdy = false;
|
|
|
if (StringUtils.isNotEmpty(orderQueryVo.getUserId())) {
|
|
|
SysUserRole userRole = sysUserRoleService.selectByUserId(orderQueryVo.getUserId());
|
|
|
- if (21 == userRole.getRoleId() || 1 == userRole.getRoleId()) { //团队长可查询下面所有人员订单
|
|
|
+
|
|
|
+ if (Arrays.asList(SystemConstant.getSysRoleTeamLeader()).contains(userRole.getRoleId().toString())) { //团队长可查询下面所有人员订单
|
|
|
isTeamLeader = true;
|
|
|
}
|
|
|
- if(19==userRole.getRoleId()){
|
|
|
- isCdy=true;
|
|
|
+
|
|
|
+ if (19 == userRole.getRoleId()) {
|
|
|
+ isCdy = true;
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
// 构造查询条件
|
|
|
@@ -298,10 +303,10 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
.orderBy(true, false, InsOrders::getCreatetime);
|
|
|
|
|
|
|
|
|
- if(isCdy){//如果是出单员查询时,只查自己的 与代客录单一致,查operatorid (手机前端userid传过来是出单用户,直接用该字段查询查operatorid)
|
|
|
+ if (isCdy) {//如果是出单员查询时,只查自己的 与代客录单一致,查operatorid (手机前端userid传过来是出单用户,直接用该字段查询查operatorid)
|
|
|
wrapper.eq(StringUtils.isNotEmpty(orderQueryVo.getUserId()), InsOrders::getOperatorid,
|
|
|
orderQueryVo.getUserId());
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
wrapper.eq(!isTeamLeader && StringUtils.isNotEmpty(orderQueryVo.getUserId()), InsOrders::getUserid,
|
|
|
orderQueryVo.getUserId());
|
|
|
}
|
|
|
@@ -354,7 +359,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult<OrderVo> getByCompanyId(@NotBlank(message = "子订单不能为空") String companyId,String userId) {
|
|
|
+ public HttpResult<OrderVo> getByCompanyId(@NotBlank(message = "子订单不能为空") String companyId, String userId) {
|
|
|
OrderVo orderAndAreaCompany = baseMapper.getOrderAndAreaCompany(companyId);
|
|
|
|
|
|
YaExtendInfoDto yaExtendInfoDto = new YaExtendInfoDto();
|
|
|
@@ -382,16 +387,16 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
|
|
|
boolean isShowOrderFee = false;
|
|
|
//如果是财务菜单进入的,不再进行权限控制,所有都可查看
|
|
|
- if("accountingUser".equals(userId)){
|
|
|
+ if ("accountingUser".equals(userId)) {
|
|
|
isShowOrderFee = true;
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
//判断当前登录人员是否为后线人员,来决定是否返回总费用详情信息
|
|
|
- List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId,"22");
|
|
|
- if(userList!=null && userList.size()>0){
|
|
|
+ List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId, "22");
|
|
|
+ if (userList != null && !userList.isEmpty()) {
|
|
|
isShowOrderFee = true;
|
|
|
}
|
|
|
}
|
|
|
- if(isShowOrderFee){
|
|
|
+ if (isShowOrderFee) {
|
|
|
List<QueryOrderFeeResultVo> orderFeeVoList = feeRuleSchemeService.convertOrderFeeVoData(queryOrderFeeVo);
|
|
|
if (!orderFeeVoList.isEmpty()) {
|
|
|
orderAndAreaCompany.setOrderFeeResult(orderFeeVoList);
|