|
@@ -0,0 +1,74 @@
|
|
|
+package com.fjhx.common.service.employee.impl;
|
|
|
+
|
|
|
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.fjhx.common.entity.employee.dto.EmployeeHandoverDto;
|
|
|
+import com.fjhx.common.entity.employee.dto.EmployeeHandoverSelectDto;
|
|
|
+import com.fjhx.common.entity.employee.po.EmployeeHandover;
|
|
|
+import com.fjhx.common.entity.employee.vo.EmployeeHandoverVo;
|
|
|
+import com.fjhx.common.mapper.employee.EmployeeHandoverMapper;
|
|
|
+import com.fjhx.common.service.CommService;
|
|
|
+import com.fjhx.common.service.employee.EmployeeHandoverService;
|
|
|
+import com.fjhx.common.utils.Assert;
|
|
|
+import com.ruoyi.common.exception.ServiceException;
|
|
|
+import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
+import com.ruoyi.common.utils.wrapper.SqlField;
|
|
|
+import com.ruoyi.system.utils.UserUtil;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 员工交接 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author
|
|
|
+ * @since 2023-07-17
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class EmployeeHandoverServiceImpl extends ServiceImpl<EmployeeHandoverMapper, EmployeeHandover> implements EmployeeHandoverService {
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private CommService commService;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<EmployeeHandoverVo> getPage(EmployeeHandoverSelectDto dto) {
|
|
|
+ IWrapper<EmployeeHandover> wrapper = getWrapper();
|
|
|
+ //关键字搜索
|
|
|
+ wrapper.keyword(dto.getKeyword(),
|
|
|
+ new SqlField(EmployeeHandoverVo::getReason),
|
|
|
+ new SqlField(EmployeeHandoverVo::getRemark),
|
|
|
+ new SqlField(EmployeeHandoverVo::getContent)
|
|
|
+ );
|
|
|
+ wrapper.orderByDesc("eh", EmployeeHandover::getId);
|
|
|
+ Page<EmployeeHandoverVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
|
+ List<EmployeeHandoverVo> records = page.getRecords();
|
|
|
+ //赋值交接人
|
|
|
+ UserUtil.assignmentNickName(records, EmployeeHandoverVo::getHandoverPersonId, EmployeeHandoverVo::setHandoverPersonName);
|
|
|
+ //赋值接收人
|
|
|
+ UserUtil.assignmentNickName(records, EmployeeHandoverVo::getRecipientId, EmployeeHandoverVo::setRecipientName);
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @DSTransactional
|
|
|
+ public void add(EmployeeHandoverDto employeeHandoverDto) {
|
|
|
+ String content = employeeHandoverDto.getContent();
|
|
|
+ Assert.notEmpty(content, "交接内容不能为空");
|
|
|
+ String[] split = content.split(",");
|
|
|
+ for (String s : split) {
|
|
|
+ if ("客户信息".equals(s)) {
|
|
|
+ //把交接人的客户信息全部修改至接收人
|
|
|
+ commService.updateCustomerSalesperson(employeeHandoverDto.getHandoverPersonId(), employeeHandoverDto.getRecipientId());
|
|
|
+ } else {
|
|
|
+ throw new ServiceException("未知交接内容:" + s);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.save(employeeHandoverDto);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|