package com.home.xining.service; import com.home.xining.config.CmnConst; import com.home.xining.service.idel.ISendDocumentService; import com.product.common.lang.StringUtils; import com.product.core.dao.BaseDao; import com.product.core.entity.DataTableEntity; import com.product.core.entity.FieldSetEntity; import com.product.core.exception.BaseException; import com.product.core.permission.PermissionService; import com.product.core.service.support.AbstractBaseService; import com.product.core.service.support.QueryFilterService; import com.product.core.transfer.Transactional; import com.product.util.BaseUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * @ClassName: SendDocumentService * @Author: ZhouJie * @Date: 2022/2/21 13:45 * @Description: 发文稿纸(发文管理) */ @Component public class SendDocumentService extends AbstractBaseService implements ISendDocumentService { @Autowired public BaseDao baseDao; @Autowired PermissionService permissionService; @Autowired QueryFilterService queryFilterService; public DataTableEntity getSendDocList(FieldSetEntity fs) throws BaseException { String filter = fs.getString("filter"); String dataFilter = ""; //创建人字段 String created_by_field = fs.getString(CmnConst.CREATED_BY_FIELD); if (!BaseUtil.strIsNull(created_by_field)) { dataFilter = permissionService.getDataFilter(fs.getTableName(), created_by_field); } if (!StringUtils.isEmpty(dataFilter)) { if (!StringUtils.isEmpty(filter)) { filter += " and " + dataFilter; } else { filter = dataFilter; } } if (!BaseUtil.dataTableIsEmpty(fs.getSubDataTable("systemSeniorQueryString"))) { filter = filter + " and " + queryFilterService.getQueryFilter(fs); } DataTableEntity dt = baseDao.listTable(CmnConst.FWGZ, filter, null, null, "fw13 desc", fs.getInteger(CmnConst.PAGESIZE), fs.getInteger(CmnConst.CPAGE)); baseDao.loadPromptData(dt); return dt; } /** * 批量归档 * * @param fs * @throws BaseException */ @Override @Transactional public boolean batchFile(FieldSetEntity fs) throws BaseException { String uuids = fs.getString("uuid"); String[] uuid = uuids.split(","); for (int i = 0; i < uuid.length; i++) { FieldSetEntity fieldSetEntity = new FieldSetEntity(); fieldSetEntity.setTableName(fs.getTableName()); fieldSetEntity.setValue("uuid", uuid[i]); fieldSetEntity.setValue("pigeonhole", 1); baseDao.update(fieldSetEntity); } return true; } /** * 人员高级参照解析并保存 * * @param fse * @throws BaseException */ @Transactional @Override public String saveFieldSetEntity(FieldSetEntity fse) throws BaseException { try { BaseUtil.createCreatorAndCreationTime(fse); baseDao.saveFieldSetEntity(fse); return fse.getUUID(); } catch (Exception e) { e.printStackTrace(); throw e; } } }