Browse Source

Merge remote-tracking branch 'origin/dev' into dev

lijunping 3 năm trước cách đây
mục cha
commit
eba80def6b

+ 6 - 0
blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/OrderItem.java

@@ -351,6 +351,12 @@ public class OrderItem implements Serializable {
 	private String corpName;
 
 	@TableField(exist = false)
+	private String dispatcherName;
+
+	@TableField(exist = false)
+	private String dispatchDeptName;
+
+	@TableField(exist = false)
 	private String corpShortName;
 
 	@TableField(exist = false)

+ 8 - 0
blade-service-api/blade-land-api/src/main/java/org/springblade/land/vo/OrderAcctVO.java

@@ -34,6 +34,14 @@ public class OrderAcctVO {
 
 	private List<Long> salesmanDeptList;
 
+	private Long dispatcher;
+
+	private String dispatcherName;
+
+	private Long dispatchDept;
+
+	private String dispatchDeptName;
+
 	private String addressDetail;
 
 	private String receiptNo;

+ 5 - 0
blade-service-api/blade-project-api/src/main/java/org/springblade/project/entity/Handover.java

@@ -91,6 +91,11 @@ public class Handover implements Serializable {
 	@ApiModelProperty(value = "接手人姓名")
 	private String handingUserName;
 	/**
+	 * 接手客户姓名
+	 */
+	@ApiModelProperty(value = "接手客户姓名")
+	private String handingCorpName;
+	/**
 	 * 联系人
 	 */
 	@ApiModelProperty(value = "联系人")

+ 7 - 5
blade-service/blade-client/src/main/java/org/springblade/client/corps/controller/CorpsAttnController.java

@@ -161,12 +161,14 @@ public class CorpsAttnController extends BladeController {
 		if (!ObjectUtil.isEmpty(corpsAttn)) {
 			CorpsDesc corpsDesc = corpsDescService.getById(corpsAttn.getPid());
 			CorpListVo vo = BeanUtil.copy(corpsDesc, CorpListVo.class);
-			if (StringUtils.isNotBlank(corpsDesc.getBelongtocompany())) {
-				CorpsDesc company = corpsDescService.getById(corpsDesc.getBelongtocompany());
-				if (!ObjectUtil.isEmpty(company) && !ObjectUtil.isEmpty(vo)) {
-					vo.setBelongCompany(company.getCname());
-					return R.data(vo);
+			if (!ObjectUtil.isEmpty(vo)) {
+				if (StringUtils.isNotBlank(corpsDesc.getBelongtocompany())) {
+					CorpsDesc company = corpsDescService.getById(corpsDesc.getBelongtocompany());
+					if (!ObjectUtil.isEmpty(company)) {
+						vo.setBelongCompany(company.getCname());
+					}
 				}
+				return R.data(vo);
 			}
 		}
 		return R.data(null);

+ 5 - 1
blade-service/blade-land/src/main/java/org/springblade/land/mapper/OrderMapper.xml

@@ -31,12 +31,14 @@
                t3.cname as corpName,
                t3.short_name as corpShortName,
                t1.salesman,
+               t5.name as salesmanName,
                t1.salesman_dept as salesmanDept,
                t1.create_user as createUser,
                t1.dispatcher,
+               t7.name as dispatcherName,
                t1.dispatch_dept as dispatchDept,
+               t6.dept_name as dispatchDeptName,
                t2.arrival_time as arrivalTime,
-               t5.name as salesmanName,
                t1.address_detail as addressDetail,
                t1.receipt_no as receiptNo,
                t1.bill_no as billNo,
@@ -55,6 +57,8 @@
                  left join basic_corps_desc t3 on t1.corp_id = t3.id
                  left join basic_corps_desc t4 on t2.fleet_id = t4.id
                  left join blade_user t5 on t1.salesman = t5.id
+                 left join blade_dept t6 on t1.dispatch_dept = t6.id
+                 left join blade_user t7 on t1.dispatcher = t7.id
         <where>
             t1.tenant_id = #{acct.tenantId}
             and t2.kind = '2'

+ 20 - 0
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderItemServiceImpl.java

@@ -50,6 +50,10 @@ import org.springblade.land.mapper.OrderMapper;
 import org.springblade.land.service.IOrderItemService;
 import org.springblade.land.util.MessageUtil;
 import org.springblade.land.vo.OrderItemVO;
+import org.springblade.system.entity.Dept;
+import org.springblade.system.feign.ISysClient;
+import org.springblade.system.user.entity.User;
+import org.springblade.system.user.feign.IUserClient;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -75,6 +79,10 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
 
 	private final ICorpsDescClient corpsDescClient;
 
+	private final IUserClient userClient;
+
+	private final ISysClient sysClient;
+
 	private final ILandDriverClient landDriverClient;
 
 	private final ICommonFileClient commonFileClient;
@@ -656,6 +664,18 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
 		item.setFactory(order.getFactory());
 		item.setAddressDetail(order.getAddressDetail());
 
+		if (ObjectUtil.isNotEmpty(order.getDispatcher())) {
+			R<User> user = userClient.userInfoById(order.getDispatcher());
+			if(user.isSuccess() && user.getData() != null) {
+				item.setDispatcherName(user.getData().getRealName());
+			}
+		}
+		if (ObjectUtil.isNotEmpty(order.getDispatchDept())) {
+			R<Dept> dept = sysClient.getDept(order.getDispatchDept());
+			if(dept.isSuccess() && dept.getData() != null) {
+				item.setDispatchDeptName(dept.getData().getDeptName());
+			}
+		}
 		if (ObjectUtil.isNotEmpty(order.getCorpId())) {
 			R<CorpsDesc> corp = corpsDescClient.getCorpMessage(order.getCorpId());
 			if (corp.isSuccess() && corp.getData() != null) {

+ 0 - 2
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderItemsServiceImpl.java

@@ -593,7 +593,6 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
 			PolicyExcel policyExcel = data.get(i);
 			if (StringUtils.isBlank(policyExcel.getCode())){
 				stringBuffer.append(policyExcel.getCode()+",");
-				data.remove(i);
 				continue;
 			}
 			if (policyExcel.getOrderQuantity() == null){
@@ -602,7 +601,6 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
 			SalesPolicyItem policyItem = salesPolicyClient.getPolicyItem(policyExcel.getCode(), policy.getId(),salesType);
 			if (policyItem == null){
 				stringBuffer.append(policyExcel.getCode()+",");
-				data.remove(i);
 				continue;
 			}
 			policyItem.setOrderQuantity(policyExcel.getOrderQuantity());

+ 18 - 0
blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.system.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
@@ -27,12 +28,14 @@ import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.BladeUser;
 import org.springblade.core.secure.annotation.PreAuth;
 import org.springblade.core.secure.constant.AuthConstant;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.constant.RoleConstant;
 import org.springblade.core.tool.support.Kv;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.system.cache.DictCache;
 import org.springblade.system.entity.Dept;
 import org.springblade.system.enums.DictEnum;
@@ -106,6 +109,21 @@ public class DeptController extends BladeController {
 	}
 
 	/**
+	 * 顶级部门列表
+	 */
+	@GetMapping("/top-list")
+	@PreAuth(AuthConstant.PERMIT_ALL)
+	public R<List<DeptVO>> topList(Dept dept) {
+		List<Dept> list = deptService.list(new LambdaQueryWrapper<Dept>()
+			.eq(ObjectUtil.isNotEmpty(dept.getDeptCategory()), Dept::getDeptCategory, dept.getDeptCategory())
+			.eq(Dept::getParentId, 0)
+			.eq(Dept::getTenantId, AuthUtil.getTenantId())
+			.eq(Dept::getIsDeleted, 0)
+		);
+		return R.data(DeptWrapper.build().listNodeVO(list));
+	}
+
+	/**
 	 * 获取部门树形结构
 	 *
 	 * @return

+ 9 - 3
blade-service/blade-user/src/main/java/org/springblade/system/user/controller/UserController.java

@@ -37,9 +37,7 @@ import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.constant.RoleConstant;
-import org.springblade.core.tool.utils.DateUtil;
-import org.springblade.core.tool.utils.StringPool;
-import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.core.tool.utils.*;
 import org.springblade.system.entity.Tenant;
 import org.springblade.system.feign.ITenantClient;
 import org.springblade.system.user.entity.User;
@@ -107,8 +105,16 @@ public class UserController {
 	public R userList(UserVO userVO) {
 		LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.like(StringUtils.isNotBlank(userVO.getRealName()), User::getRealName, userVO.getRealName())
+			.eq(ObjectUtil.isNotEmpty(userVO.getDeptPid()), User::getDeptPid, userVO.getDeptPid())
 			.eq(User::getTenantId, AuthUtil.getTenantId())
 			.eq(User::getIsDeleted, 0);
+
+		if (StringUtil.isNotBlank(userVO.getUserExt())) {
+			List<Long> userIdList = userService.getUserIdByCorpId(Long.parseLong(userVO.getUserExt()));
+			if (CollectionUtil.isNotEmpty(userIdList)) {
+				lambdaQueryWrapper.in(User::getId, userIdList);
+			}
+		}
 		return R.data(userService.list(lambdaQueryWrapper));
 	}
 

+ 8 - 0
blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.java

@@ -68,4 +68,12 @@ public interface UserMapper extends BaseMapper<User> {
 	 */
 	List<Map<String,Object>>  gainUser(@Param("tenantId")String tenantId);
 
+	/**
+	 * 根据客户ID获取用户ID
+	 *
+	 * @param corpId 客户ID
+	 * @return 列表
+	 */
+	List<Long> getUserIdByCorpId(@Param("corpId") Long corpId);
+
 }

+ 4 - 0
blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml

@@ -85,4 +85,8 @@
             AND name IS NOT NULL
     </select>
 
+    <select id="getUserIdByCorpId" resultType="long">
+        select user_id from basic_corps_attn where pid = #{corpId} and is_deleted = 0 and user_id is not null
+    </select>
+
 </mapper>

+ 9 - 0
blade-service/blade-user/src/main/java/org/springblade/system/user/service/IUserService.java

@@ -213,4 +213,13 @@ public interface IUserService extends BaseService<User> {
 	 * @return
 	 */
 	List<Map<String,Object>> gainUser(String tenantId);
+
+	/**
+	 * 根据客户ID获取用户ID
+	 *
+	 * @param corpId 客户ID
+	 * @return 列表
+	 */
+	List<Long> getUserIdByCorpId(Long corpId);
+
 }

+ 5 - 0
blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java

@@ -436,6 +436,11 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
 		return baseMapper.gainUser(tenantId);
 	}
 
+	@Override
+	public List<Long> getUserIdByCorpId(Long corpId) {
+		return baseMapper.getUserIdByCorpId(corpId);
+	}
+
 	/**
 	 * 查询顶级部门ID
 	 */