许鹏程
2024-12-30 327991834574bbb8bbd78f29382297aa13d001d6
home-server-admin/src/main/java/com/home/xining/service/ReceiptDocumentService.java
@@ -1,5 +1,6 @@
package com.home.xining.service;
import cn.hutool.core.collection.CollectionUtil;
import com.home.xining.config.CmnConst;
import com.home.xining.service.idel.IReceiptDocumentService;
import com.product.common.lang.StringUtils;
@@ -11,9 +12,13 @@
import com.product.core.service.support.AbstractBaseService;
import com.product.core.service.support.QueryFilterService;
import com.product.core.transfer.Transactional;
import com.product.tool.flow.service.FlowService;
import com.product.util.BaseUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @ClassName: ReceiptDocumentService
@@ -30,6 +35,8 @@
    PermissionService permissionService;
    @Autowired
    QueryFilterService queryFilterService;
   @Autowired
   FlowService flowService;
    public DataTableEntity getReciptDocList(FieldSetEntity fs) throws BaseException {
        String filter=fs.getString("filter");
@@ -57,6 +64,7 @@
    /**
     * 收文管理 状态改为已打印
    *
     * @param fse
     * @return
     */
@@ -65,4 +73,25 @@
    public Boolean isPrint(FieldSetEntity fse) {
        return baseDao.update(fse);
    }
   //收文抄送局长
   public Boolean sendToLeader(FieldSetEntity record, String jobPostName) {
      FieldSetEntity task = getBaseDao().getFieldSetByFilter(com.product.tool.flow.config.CmnConst.TABLE_FLOW_TASK, "table_name=? and record_uuid=?", new Object[]{record.getTableName(), record.getUUID()}, false);
      if (!FieldSetEntity.isEmpty(task)) {
//         根据岗位名称模糊搜索人员
         DataTableEntity dataTableEntity = getBaseDao().listTable("product_sys_staffs",
               "job_post_uuid IN ( SELECT uuid FROM product_sys_job_posts WHERE job_post_name LIKE concat('%',?,'%') ) AND staff_status in(1,3)",
               new Object[]{jobPostName});
         if (!DataTableEntity.isEmpty(dataTableEntity)) {
            List<String> collect = dataTableEntity.getData().stream().map(item -> item.getString("user_id")).collect(Collectors.toList());
            task.setValue("accept_users", CollectionUtil.join(collect, ","));
            task.setValue("circularize_type", "1");
            flowService.circularize(task);
         }
      }
      return true;
   }
}