Sfoglia il codice sorgente

转派+daoru加机构

sunyize 2 anni fa
parent
commit
2707d14106

+ 116 - 29
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckCustomerDataController.java

@@ -63,6 +63,8 @@ public class SmsCheckCustomerDataController extends JeecgController<SmsCheckCust
     @Autowired
     private ISmsCheckCustomerDataLogService checkCustomerDataLogService;
     @Autowired
+    private  TransferService transferService;
+    @Autowired
     private ISmsCheckCustomerDataLogBillService iSmsCheckCustomerDataLogBillService;
     @Autowired
     private ISmsCheckCustomerInfoService infoService;
@@ -240,23 +242,112 @@ public class SmsCheckCustomerDataController extends JeecgController<SmsCheckCust
     }
 
 
+
+    @ApiOperation(value = "客户资料-查询角色部门", notes = "客户资料-查询角色部门")
+    @GetMapping(value = "/queryDeptById")
+    public Result<List<SysDepartModel>> queryDeptById(@RequestParam(name = "workNo") String workNo) {
+
+        List<SysDepartModel> sysDepartModel = customerInfoService.getSysDepartModel();
+        List<SysDepartModel> modelList = new ArrayList<>();
+        Map<String, SysDepartModel> sysDepartModelMap
+                = sysDepartModel.stream().collect(Collectors.toMap(SysDepartModel::getOrgCode,Function.identity(), (o, n) -> o));
+        List<String> deptNameByUserId = taskService.getDeptNameByUserId(workNo);
+        if (!deptNameByUserId.isEmpty()){
+            for (String s : deptNameByUserId) {
+                SysDepartModel sysDepartModel1 = sysDepartModelMap.get(s);
+                modelList.add(sysDepartModel1);
+            }
+        }
+        return Result.OK(modelList);
+    }
     @AutoLog(value = "客户资料-转派")
     @ApiOperation(value = "客户资料转派", notes = "客户资料转派")
     @PostMapping(value = "/transfer")
     public Result<String> transfer(@RequestBody TransferVo transferVo) throws IllegalAccessException {
 
-        String userId = transferVo.getUserId();
-        SysUser userServiceById = sysUserService.getById(userId);
-        List<String> ids = transferVo.getIds();
+        boolean trans = trans(transferVo,"in");
+        if (trans){
+            return Result.OK("成功");
+        }else {
+            return Result.error("发生错误");
+        }
+    }
+
+    private boolean trans(TransferVo transferVo,String info){
+        try{
+
+            String userId = transferVo.getUserId();
+            SysUser userServiceById = sysUserService.getById(userId);
+            List<String> ids = transferVo.getIds();
+            List<SysUser> list = sysUserService.list();
+
+            Map<String, SysUser> userMap
+                    = list.stream().collect(Collectors.toMap(SysUser::getWorkNo, Function.identity(), (o, n) -> o));
+
 
-        for (String id : ids) {
-            SmsCheckCustomerInfo byId = customerInfoService.getById(id);
-            byId.setStaffNo(userServiceById.getWorkNo());
-            byId.setStaffInfo(userServiceById.getWorkNo());
-            SmsCheckCustomerInfo smsCheckCustomerInfo = checkCustomerInfo(byId);
-            customerInfoService.saveOrUpdate(smsCheckCustomerInfo);
+            for (String id : ids) {
+                SmsCheckCustomerInfo byId = customerInfoService.getById(id);
+                Transfer transfer =new Transfer();
+                //以前orgcode
+                transfer.setOldOrgCode(byId.getSysOrgCode());
+                transfer.setOldUserId(userMap.get(byId.getStaffNo()).getId());
+
+                byId.setStaffNo(userServiceById.getWorkNo());
+                byId.setStaffInfo(userServiceById.getWorkNo());
+                byId.setSysOrgCode(transferVo.getOrgCode());
+                SmsCheckCustomerInfo smsCheckCustomerInfo = checkCustomerInfo(byId);
+
+                customerInfoService.saveOrUpdate(smsCheckCustomerInfo);
+                if (info.equals("in")){
+                    transfer.setCreateDate(new Date());
+                    transfer.setNewOrgCode(transferVo.getOrgCode());
+                    transfer.setNewUserId(transferVo.getUserId());
+
+                    transfer.setUserId(userId);
+                    transfer.setIds(id);
+                    transfer.setNumber(0);
+                    transferService.save(transfer);
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
         }
-        return null;
+        return true;
+    }
+
+    @AutoLog(value = "客户资料-转派回退")
+    @ApiOperation(value = "转派回退", notes = "转派回退")
+    @PostMapping(value = "/transferOut")
+    public Result<String> transferOut(@RequestBody TransferVo transferVo) throws IllegalAccessException {
+        try{
+            LambdaQueryWrapper<Transfer> query = new LambdaQueryWrapper<Transfer>();
+            query.in(Transfer::getIds,transferVo.getIds());
+            List<Transfer> transfers = transferService.list(query);
+
+            if (!transfers.isEmpty() && transfers.get(0).getNumber()==1){
+                return Result.error("不可反复回退!");
+            }
+            if ( transfers.isEmpty() ){
+                return Result.error("无转派记录!");
+            }
+            for (Transfer transfer : transfers) {
+                TransferVo transferVo1 = new TransferVo();
+                List<String>list=new ArrayList<>();
+                list.add(transfer.getIds());
+                transfer.setNumber(1);
+                transferService.saveOrUpdate(transfer);
+                //组建对象
+                transferVo1.setIds(list);
+                transferVo1.setOrgCode(transfer.getOldOrgCode());
+                transferVo1.setUserId(transfer.getOldUserId());
+                boolean trans = trans(transferVo1, ",out");
+
+            }
+
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return Result.OK("成功");
     }
 
     private SmsCheckCustomerInfo checkCustomerInfo(SmsCheckCustomerInfo vo ) {
@@ -278,18 +369,16 @@ public class SmsCheckCustomerDataController extends JeecgController<SmsCheckCust
                 = userList.stream().collect(Collectors.toMap(SysUser::getWorkNo, Function.identity(), (o, n) -> o));
         SysUser sysUser = userMap.get(vo.getStaffNo());
         //  状态(1:正常  2:冻结 )
-        String orgCode="";
         //员工姓名
         if (sysUser!=null){
             vo.setStaffName(sysUser.getRealname());
             vo.setStaffUsername( sysUser.getUsername());
             Integer status = sysUser.getStatus();
-            if (status==1){
+            if (status!=1){
                 vo.setUserState("冻结");
             }else {
                 vo.setUserState("正常");
             }
-            orgCode = sysUser.getOrgCode();
         }
 
         List<SysDepartModel> sysDepartModel = customerInfoService.getSysDepartModel();
@@ -297,26 +386,24 @@ public class SmsCheckCustomerDataController extends JeecgController<SmsCheckCust
                 = sysDepartModel.stream().collect(Collectors.toMap(SysDepartModel::getOrgCode,Function.identity(), (o, n) -> o));
         //员工二级部门
         if (sysUser!=null){
-            List<String> deptNameByUserId = taskService.getDeptNameByUserId( sysUser.getWorkNo());
-            if (!deptNameByUserId.isEmpty()){
-                Set<String>strings=new HashSet<>();
+             if (!vo.getSysOrgCode().isEmpty()){
+                 String sysOrgCode = vo.getSysOrgCode();
+                 Set<String>strings=new HashSet<>();
                 Set<String>stringsOrg=new HashSet<>();
                 Set<String>stringsThree=new HashSet<>();
                 Set<String>stringsThreeOrg=new HashSet<>();
-                for (String s : deptNameByUserId) {
-                    if (s.length()>=3){
-                        String substring = s.substring(0, 3);
-                        strings.add(sysDepartModelMap.get(substring).getDepartName());
-                        stringsOrg.add(substring);
-                    }
-                    if (s.length()>=6){
-                        String substring = s.substring(0, 6);
-                        stringsThree.add(sysDepartModelMap.get(substring).getDepartName());
-                        stringsThreeOrg.add(substring);
-                    }
+
+                if (sysOrgCode.length()>=3){
+                    String substring = sysOrgCode.substring(0, 3);
+                    strings.add(sysDepartModelMap.get(substring).getDepartName());
+                    stringsOrg.add(substring);
+                }
+                if (sysOrgCode.length()>=6){
+                    String substring = sysOrgCode.substring(0, 6);
+                    stringsThree.add(sysDepartModelMap.get(substring).getDepartName());
+                    stringsThreeOrg.add(substring);
                 }
-                // 等确认
-                vo.setSysOrgCode(deptNameByUserId.get(0));
+                vo.setSysOrgCode(sysOrgCode);
                 vo.setStaffDeptLevel2No(stringsOrg.toString());
                 vo.setStaffDeptLevel2Name(strings.toString());
                 vo.setStaffDeptLevel2(strings.toString()+"("+stringsOrg.toString()+")");

+ 46 - 4
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckTaskController.java

@@ -289,6 +289,21 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
                 listErro.add(infoVo);
                 continue;
             }
+            info.setStaffUsername(user.getUsername());
+            if (info.getSysOrgCode()==null){
+                infoVo.setResult("0");
+                infoVo.setErrorMsg("机构未查到");
+                listErro.add(infoVo);
+                continue;
+            }
+            List<String> deptNameByUserId = taskService.getDeptNameByUserId(user.getWorkNo());
+            if (!deptNameByUserId.contains(info.getSysOrgCode())){
+                infoVo.setResult("0");
+                infoVo.setErrorMsg("此员工机构选择错误");
+                listErro.add(infoVo);
+                continue;
+            }
+
             if (info.getStaffDeptLevel2Name()==null || info.getStaffDeptLevel2No()==null) {
                 infoVo.setResult("0");
                 infoVo.setErrorMsg("二级部门信息为空");
@@ -302,8 +317,6 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
                 continue;
             }
 
-            info.setStaffUsername(user.getUsername());
-//            info.setSysOrgCode(user.getWorkNo());
             info.setDelFlag(CommonConstant.DEL_FLAG_0);
             // 0:未处理;1:未完善;2:待稽核;3:待整改;4:已整改;5:稽核通过 6 未上传;
             info.setCheckState(CheckStateCode.CHECK_STSTE_0);
@@ -449,7 +462,7 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
             vo.setStaffName(sysUser.getRealname());
             vo.setStaffUsername( sysUser.getUsername());
             Integer status = sysUser.getStatus();
-            if (status==1){
+            if (status!=1){
                 vo.setUserState("冻结");
             }else {
                 vo.setUserState("正常");
@@ -461,7 +474,7 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
         Map<String, SysDepartModel> sysDepartModelMap
                 = sysDepartModel.stream().collect(Collectors.toMap(SysDepartModel::getOrgCode,Function.identity(), (o, n) -> o));
         //员工二级部门
-        if (sysUser!=null){
+        if (sysUser!=null && vo.getSysOrgName()==null){
             List<String> deptNameByUserId = taskService.getDeptNameByUserId( sysUser.getWorkNo());
             if (!deptNameByUserId.isEmpty()){
                 Set<String>strings=new HashSet<>();
@@ -488,7 +501,36 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
                 vo.setStaffDeptLevel3(stringsThree.toString()+"("+stringsThreeOrg.toString()+")");
             }
         }
+        if (vo.getSysOrgName()!=null){
+            Map<String, SysDepartModel> sysDepartModelMapCode
+                    = sysDepartModel.stream().collect(Collectors.toMap(SysDepartModel::getDepartName,Function.identity(), (o, n) -> o));
+            Set<String>strings=new HashSet<>();
+            Set<String>stringsOrg=new HashSet<>();
+            Set<String>stringsThree=new HashSet<>();
+            Set<String>stringsThreeOrg=new HashSet<>();
+
+            if (sysDepartModelMapCode.get(vo.getSysOrgName().trim())!=null){
+                String orgCode1 = sysDepartModelMapCode.get(vo.getSysOrgName().trim()).getOrgCode();
+                if (orgCode1.length()>=3){
+                    String substring = orgCode1.substring(0, 3);
+                    strings.add(sysDepartModelMap.get(substring).getDepartName());
+                    stringsOrg.add(substring);
+                }
+                if (orgCode1.length()>=6){
+                    String substring = orgCode1.substring(0, 6);
+                    stringsThree.add(sysDepartModelMap.get(substring).getDepartName());
+                    stringsThreeOrg.add(substring);
+                }
+                vo.setStaffDeptLevel2No(stringsOrg.toString());
+                vo.setStaffDeptLevel2Name(strings.toString());
+                vo.setStaffDeptLevel2(strings.toString()+"("+stringsOrg.toString()+")");
+                vo.setStaffDeptLevel3No(stringsThreeOrg.toString());
+                vo.setStaffDeptLevel3Name(stringsThree.toString());
+                vo.setStaffDeptLevel3(stringsThree.toString()+"("+stringsThreeOrg.toString()+")");
+                vo.setSysOrgCode(orgCode1);
+            }
 
+        }
         //员工三级部门
 
 //        if (!deptNameByUserIds.isEmpty()){

+ 3 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsCheckCustomerInfoError.java

@@ -264,6 +264,9 @@ public class SmsCheckCustomerInfoError implements Serializable {
     private String errorMsg;
 
     private String batchNo;
+    @Excel(name = "机构名称", width = 15)
+    @ApiModelProperty(value = "机构名称")
+    private String sysOrgName;
 
 }
 

+ 41 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/Transfer.java

@@ -0,0 +1,41 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+@TableName("transfer")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="transfer_vo", description="转派")
+public class Transfer {
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+
+    private String ids;
+
+    private String userId;
+
+    private String OldOrgCode;
+
+    private String newOrgCode;
+
+    private Date createDate;
+
+    private Integer number;
+
+    private String oldUserId;
+
+    private String newUserId;
+}

+ 22 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/TransferVo.java

@@ -1,7 +1,12 @@
 package org.jeecg.modules.smscheck.entity;
 
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
+import java.util.Date;
 import java.util.List;
 
 @Data
@@ -10,4 +15,21 @@ public class TransferVo {
     private List<String> ids;
 
     private String userId;
+
+    //页面传的 退回不用
+    private String orgCode;
+
+
+    private String OldOrgCode;
+
+    private String newOrgCode;
+
+    private Date createDate;
+
+    private Integer number;
+
+    private String oldUserId;
+
+    private String newUserId;
+
 }

+ 3 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/errorExcel/SmsCheckCustomerInfoLotError.java

@@ -208,7 +208,9 @@ public class SmsCheckCustomerInfoLotError implements Serializable {
 	/** 所属部门 */
     @ApiModelProperty(value = "所属部门")
     private String sysOrgCode;
-
+    @Excel(name = "机构名称", width = 15)
+    @ApiModelProperty(value = "机构名称")
+    private String sysOrgName;
 
     /**提交材料日期*/
    // @Excel(name = "提交材料日期", width = 15)

+ 3 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/errorExcel/SmsCheckCustomerInfoShortError.java

@@ -206,7 +206,9 @@ public class SmsCheckCustomerInfoShortError implements Serializable {
     @ApiModelProperty(value = "所属部门")
     private String sysOrgCode;
 
-
+    @Excel(name = "机构名称", width = 15)
+    @ApiModelProperty(value = "机构名称")
+    private String sysOrgName;
     /**提交材料日期*/
     // @Excel(name = "提交材料日期", width = 15)
     @ApiModelProperty(value = "提交材料日期")

+ 3 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/errorExcel/SmsCheckCustomerInfoTruckError.java

@@ -210,7 +210,9 @@ public class SmsCheckCustomerInfoTruckError implements Serializable {
     @ApiModelProperty(value = "所属部门")
     private String sysOrgCode;
 
-
+    @Excel(name = "机构名称", width = 15)
+    @ApiModelProperty(value = "机构名称")
+    private String sysOrgName;
     /**提交材料日期*/
    // @Excel(name = "提交材料日期", width = 15)
     @ApiModelProperty(value = "提交材料日期")

+ 1 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckTaskMapper.java

@@ -13,7 +13,7 @@ import java.util.List;
  * @version V1.0
  */
 public interface SmsCheckTaskMapper extends BaseMapper<SmsCheckTask> {
-    @Select("SELECT d.org_code " +
+    @Select("SELECT DISTINCT d.org_code " +
             "FROM sys_user_depart ud,sys_depart d,sys_user u " +
             "WHERE d.id = ud.dep_id " +
             "and u.id = ud.user_id  " +

+ 10 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/TransferMapper.java

@@ -0,0 +1,10 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.Transfer;
+
+@Mapper
+public interface TransferMapper  extends BaseMapper<Transfer> {
+}

+ 8 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/TransferService.java

@@ -0,0 +1,8 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.Transfer;
+
+public interface TransferService extends IService<Transfer> {
+}

+ 14 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/TransferServiceImpl.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.Transfer;
+import org.jeecg.modules.smscheck.mapper.AsCheckCustomerInfoMapper;
+import org.jeecg.modules.smscheck.mapper.TransferMapper;
+import org.jeecg.modules.smscheck.service.AsCheckCustomerInfoService;
+import org.jeecg.modules.smscheck.service.TransferService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class TransferServiceImpl  extends ServiceImpl<TransferMapper, Transfer> implements TransferService {
+}

+ 6 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/vo/SmsCheckCustomerInfoVo.java

@@ -122,5 +122,11 @@ public class SmsCheckCustomerInfoVo implements Serializable {
 
     @ApiModelProperty(value = "批次号")
     private String batchNo;
+    @Excel(name = "机构名称", width = 15)
+    @ApiModelProperty(value = "机构名称")
+    private String sysOrgName;
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+
 }