Commit 08e9998f authored by 鲁鸿波's avatar 鲁鸿波

承包商准入管理修改记录,通过后可删除

增加上传单位筛选条件,条件内容为组织机构单位下拉选择项,效果同节能环保管理的单位名称筛选项
parent ae8660ef
...@@ -135,4 +135,11 @@ public class Constants ...@@ -135,4 +135,11 @@ public class Constants
public static final String DBGK_ORG_ID = "1335dbc3f81b4919bf59014fede4819d"; public static final String DBGK_ORG_ID = "1335dbc3f81b4919bf59014fede4819d";
public static final String APPROVAL_STATUS_ZERO = "0";
public static final String APPROVAL_STATUS_ONE = "1";
public static final String MODIFY_STATUS_ZERO = "0";
public static final String MODIFY_STATUS_ONE = "1";
} }
...@@ -128,3 +128,162 @@ INSERT INTO "public"."t_sys_config" ("config_id", "config_name", "config_key", " ...@@ -128,3 +128,162 @@ INSERT INTO "public"."t_sys_config" ("config_id", "config_name", "config_key", "
,b828ca4431854e699195888466057955,e5a463b08c9d4e54bd47ed416941380c,7ba23b0151cb49578cd3abd5ceea72ac,d4185815c13544c3950416d77cd6d65c,164b5cf61efe4a269911e2097eb997f9 ,b828ca4431854e699195888466057955,e5a463b08c9d4e54bd47ed416941380c,7ba23b0151cb49578cd3abd5ceea72ac,d4185815c13544c3950416d77cd6d65c,164b5cf61efe4a269911e2097eb997f9
,49d90fa9ddac4b94928afc126f72161c,b5e5a052640f4a5b82b0ce7ef0f31bb0,b82dc615aecb4b2dae28d82ce8eb4693,bed4208a45254ff8b072e3737cdbe85f,c4396dd90e964a208a9992186632ff59 ,49d90fa9ddac4b94928afc126f72161c,b5e5a052640f4a5b82b0ce7ef0f31bb0,b82dc615aecb4b2dae28d82ce8eb4693,bed4208a45254ff8b072e3737cdbe85f,c4396dd90e964a208a9992186632ff59
,5c7b5e799ae6482bae0ca375e64210de,6f7549e8402643beb79e4f726722ed27,6ceddfaddf20442ca861f58ecb139012,311ee5aebc884803a0d0e1353db805cd,1335dbc3f81b4919bf59014fede4819d', 'N', '0', NULL, '2024-12-24 15:29:54', NULL, '2024-12-24 15:29:54', NULL); ,5c7b5e799ae6482bae0ca375e64210de,6f7549e8402643beb79e4f726722ed27,6ceddfaddf20442ca861f58ecb139012,311ee5aebc884803a0d0e1353db805cd,1335dbc3f81b4919bf59014fede4819d', 'N', '0', NULL, '2024-12-24 15:29:54', NULL, '2024-12-24 15:29:54', NULL);
# 20251106上线需求
ALTER TABLE t_contractor_person ADD COLUMN contract_period varchar(200) NULL; -- 合同期限
COMMENT ON COLUMN public.t_contractor_person.contract_period IS '合同期限';
-- public.t_contractor_access_log definition
-- Drop table
-- DROP TABLE public.t_contractor_access_log;
CREATE TABLE public.t_contractor_access_log (
id varchar(64) NOT NULL, -- 主键ID
contractor_allow_id varchar(1000) NULL, -- 准入管理对象ID
person_name varchar(50) NULL, -- 人员姓名
gender varchar(255) NULL, -- 性别
id_card_no varchar(20) NULL, -- 身份证号
age int4 NULL, -- 年龄
job_nature_id varchar(64) NULL, -- 岗位性质id(数据字典id)
job_nature varchar(50) NULL, -- 岗位性质
job_title_id varchar(64) NULL, -- 岗位名称id(数据字典id)
job_title varchar(50) NULL, -- 岗位名称
tel varchar(20) NULL, -- 联系电话
status varchar(1) NULL DEFAULT '0'::varchar, -- 0 正常 1 删除 2 停用
org_id text NULL, -- 所属企业id
tools_name varchar(50) NULL, -- 工器具名称
tools_type_id varchar(64) NULL, -- 工器具类别id(数据字典id)
tools_type varchar(50) NULL, -- 工器具类别
tools_model varchar(100) NULL, -- 工器具型号
tools_num int4 NULL, -- 工器具数量
tools_purpose varchar(200) NULL, -- 工器具用途
tools_is_pass bpchar(1) NULL, -- 工器具是否合格 0 不合格 1 合格
material_name varchar(100) NULL, -- 物料名称
material_type_id varchar(64) NULL, -- 物料类别id(数据字典id)
material_type varchar(50) NULL, -- 物料类别
risk_id varchar(64) NULL, -- 危险性id(数据字典id)
risk varchar(100) NULL, -- 危险性
material_model varchar(100) NULL, -- 物料型号
material_num int4 NULL, -- 物料数量
material_purpose varchar(200) NULL, -- 物料用途
equipment_name varchar(100) NULL, -- 防护用品名称
type_id varchar(64) NULL, -- 防护用品类别id(数据字典id)
equipment_type varchar(50) NULL, -- 防护用品类别
is_general bpchar(1) NULL, -- 常规用品 0否 1是
equipment_model varchar(100) NULL, -- 防护用品型号
equipment_num int4 NULL, -- 防护用品数量
equipment_purpose varchar(200) NULL, -- 防护用品用途
batch varchar(50) NULL, -- 批次
remarks varchar(255) NULL, -- 备注
create_by varchar(64) NULL, -- 创建者
create_date sys."timestamp" NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间
update_by varchar(64) NULL, -- 更新者
update_date sys."timestamp" NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间
"type" varchar(50) NULL -- 修改项(1:人员 2:工器具 3:防护用品数量 4:防护用品数量)
);
COMMENT ON TABLE public.t_contractor_access_log IS '承包商准入管理访问日志';
-- Column comments
COMMENT ON COLUMN public.t_contractor_access_log.id IS '主键ID';
COMMENT ON COLUMN public.t_contractor_access_log.contractor_allow_id IS '准入管理对象ID';
COMMENT ON COLUMN public.t_contractor_access_log.person_name IS '人员姓名';
COMMENT ON COLUMN public.t_contractor_access_log.gender IS '性别';
COMMENT ON COLUMN public.t_contractor_access_log.id_card_no IS '身份证号';
COMMENT ON COLUMN public.t_contractor_access_log.age IS '年龄';
COMMENT ON COLUMN public.t_contractor_access_log.job_nature_id IS '岗位性质id(数据字典id)';
COMMENT ON COLUMN public.t_contractor_access_log.job_nature IS '岗位性质';
COMMENT ON COLUMN public.t_contractor_access_log.job_title_id IS '岗位名称id(数据字典id)';
COMMENT ON COLUMN public.t_contractor_access_log.job_title IS '岗位名称';
COMMENT ON COLUMN public.t_contractor_access_log.tel IS '联系电话';
COMMENT ON COLUMN public.t_contractor_access_log.status IS '0 正常 1 删除 2 停用';
COMMENT ON COLUMN public.t_contractor_access_log.org_id IS '所属企业id';
COMMENT ON COLUMN public.t_contractor_access_log.tools_name IS '工器具名称';
COMMENT ON COLUMN public.t_contractor_access_log.tools_type_id IS '工器具类别id(数据字典id)';
COMMENT ON COLUMN public.t_contractor_access_log.tools_type IS '工器具类别';
COMMENT ON COLUMN public.t_contractor_access_log.tools_model IS '工器具型号';
COMMENT ON COLUMN public.t_contractor_access_log.tools_num IS '工器具数量';
COMMENT ON COLUMN public.t_contractor_access_log.tools_purpose IS '工器具用途';
COMMENT ON COLUMN public.t_contractor_access_log.tools_is_pass IS '工器具是否合格 0 不合格 1 合格';
COMMENT ON COLUMN public.t_contractor_access_log.material_name IS '物料名称';
COMMENT ON COLUMN public.t_contractor_access_log.material_type_id IS '物料类别id(数据字典id)';
COMMENT ON COLUMN public.t_contractor_access_log.material_type IS '物料类别';
COMMENT ON COLUMN public.t_contractor_access_log.risk_id IS '危险性id(数据字典id)';
COMMENT ON COLUMN public.t_contractor_access_log.risk IS '危险性';
COMMENT ON COLUMN public.t_contractor_access_log.material_model IS '物料型号';
COMMENT ON COLUMN public.t_contractor_access_log.material_num IS '物料数量';
COMMENT ON COLUMN public.t_contractor_access_log.material_purpose IS '物料用途';
COMMENT ON COLUMN public.t_contractor_access_log.equipment_name IS '防护用品名称';
COMMENT ON COLUMN public.t_contractor_access_log.type_id IS '防护用品类别id(数据字典id)';
COMMENT ON COLUMN public.t_contractor_access_log.equipment_type IS '防护用品类别';
COMMENT ON COLUMN public.t_contractor_access_log.is_general IS '常规用品 0否 1是';
COMMENT ON COLUMN public.t_contractor_access_log.equipment_model IS '防护用品型号';
COMMENT ON COLUMN public.t_contractor_access_log.equipment_num IS '防护用品数量';
COMMENT ON COLUMN public.t_contractor_access_log.equipment_purpose IS '防护用品用途';
COMMENT ON COLUMN public.t_contractor_access_log.batch IS '批次';
COMMENT ON COLUMN public.t_contractor_access_log.remarks IS '备注';
COMMENT ON COLUMN public.t_contractor_access_log.create_by IS '创建者';
COMMENT ON COLUMN public.t_contractor_access_log.create_date IS '创建时间';
COMMENT ON COLUMN public.t_contractor_access_log.update_by IS '更新者';
COMMENT ON COLUMN public.t_contractor_access_log.update_date IS '更新时间';
COMMENT ON COLUMN public.t_contractor_access_log."type" IS '修改项(1:人员 2:工器具 3:防护用品数量 4:防护用品数量)';
-- public.t_contractor_access_log foreign keys
-- public.t_contractor_access_log_approval definition
-- Drop table
-- DROP TABLE public.t_contractor_access_log_approval;
CREATE TABLE public.t_contractor_access_log_approval (
id varchar(64) NOT NULL, -- 主键ID
access_log_id varchar(64) NULL, -- 承包商准入管理访问日志ID
"name" varchar(50) NULL, -- 审核人姓名
approval_content varchar(500) NULL, -- 审核人内容
approval_status varchar(50) NULL, -- 审批状态(1:通过 2:进行中 3:驳回)
status varchar(1) NULL DEFAULT '0'::varchar, -- 0 正常 1 删除 2 停用
remarks varchar(255) NULL,
create_by varchar(64) NULL, -- 创建者
create_date sys."timestamp" NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间
update_by varchar(64) NULL, -- 更新者
update_date sys."timestamp" NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间
"type" varchar(50) NULL, -- 修改项(1:人员 2:工器具 3:防护用品数量 4:防护用品数量)
contractor_allow_id varchar(64) NULL, -- 准入管理对象ID
name_by varchar(500) NULL
);
COMMENT ON TABLE public.t_contractor_access_log_approval IS '承包商准入管理访问日志审批表';
-- Column comments
COMMENT ON COLUMN public.t_contractor_access_log_approval.id IS '主键ID';
COMMENT ON COLUMN public.t_contractor_access_log_approval.access_log_id IS '承包商准入管理访问日志ID';
COMMENT ON COLUMN public.t_contractor_access_log_approval."name" IS '审核人姓名';
COMMENT ON COLUMN public.t_contractor_access_log_approval.approval_content IS '审核人内容';
COMMENT ON COLUMN public.t_contractor_access_log_approval.approval_status IS '审批状态(1:通过 2:进行中 3:驳回)';
COMMENT ON COLUMN public.t_contractor_access_log_approval.status IS '0 正常 1 删除 2 停用';
COMMENT ON COLUMN public.t_contractor_access_log_approval.create_by IS '创建者';
COMMENT ON COLUMN public.t_contractor_access_log_approval.create_date IS '创建时间';
COMMENT ON COLUMN public.t_contractor_access_log_approval.update_by IS '更新者';
COMMENT ON COLUMN public.t_contractor_access_log_approval.update_date IS '更新时间';
COMMENT ON COLUMN public.t_contractor_access_log_approval."type" IS '修改项(1:人员 2:工器具 3:防护用品数量 4:防护用品数量)';
COMMENT ON COLUMN public.t_contractor_access_log_approval.contractor_allow_id IS '准入管理对象ID';
-- public.t_contractor_access_log_approval foreign keys
\ No newline at end of file
...@@ -10,9 +10,12 @@ import com.baomidou.mybatisplus.annotation.TableName; ...@@ -10,9 +10,12 @@ import com.baomidou.mybatisplus.annotation.TableName;
import com.tongtech.tfw.backend.common.models.supers.SuperModel; import com.tongtech.tfw.backend.common.models.supers.SuperModel;
import com.tongtech.tfw.backend.common.models.supers.SuperModel.SuperModelBuilder; import com.tongtech.tfw.backend.common.models.supers.SuperModel.SuperModelBuilder;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
@Data
@TableName("t_sys_user") @TableName("t_sys_user")
public class SysUser extends SuperModel { public class SysUser extends SuperModel {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -251,6 +251,13 @@ public class TContractorPerson extends SuperModel ...@@ -251,6 +251,13 @@ public class TContractorPerson extends SuperModel
@TableField(exist = false) @TableField(exist = false)
private String infoDesignation; private String infoDesignation;
/**
* 合同期限
*/
@ApiModelProperty(value = "合同期限")
@TableField("contract_period")
private String contractPeriod;
public static final String ID ="id"; public static final String ID ="id";
public static final String INFO_ID ="info_id"; public static final String INFO_ID ="info_id";
public static final String NAME ="name"; public static final String NAME ="name";
......
...@@ -15,6 +15,7 @@ import java.util.Random; ...@@ -15,6 +15,7 @@ import java.util.Random;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.testor.common.constant.StatusEnum; import com.testor.common.constant.StatusEnum;
import com.testor.common.core.domain.R;
import com.testor.common.util.BeanConverUtil; import com.testor.common.util.BeanConverUtil;
import com.testor.module.contractor.ledger.model.domain.TContractorMaterial; import com.testor.module.contractor.ledger.model.domain.TContractorMaterial;
import com.testor.module.contractor.ledger.model.domain.TContractorPerson; import com.testor.module.contractor.ledger.model.domain.TContractorPerson;
...@@ -32,6 +33,7 @@ import com.testor.module.contractor.manage.model.domain.TContractorAllowPerson; ...@@ -32,6 +33,7 @@ import com.testor.module.contractor.manage.model.domain.TContractorAllowPerson;
import com.testor.module.contractor.manage.model.dto.*; import com.testor.module.contractor.manage.model.dto.*;
import com.testor.module.contractor.manage.service.*; import com.testor.module.contractor.manage.service.*;
import com.tongtech.tfw.backend.common.context.ContextUtils; import com.tongtech.tfw.backend.common.context.ContextUtils;
import com.tongtech.tfw.backend.common.exception.BusinessException;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -250,6 +252,7 @@ public class TContractorAllowController extends SuperController ...@@ -250,6 +252,7 @@ public class TContractorAllowController extends SuperController
BaseResponse<BaseResponseList<TContractorAllowDTO>>baseResponse=new BaseResponse<>(); BaseResponse<BaseResponseList<TContractorAllowDTO>>baseResponse=new BaseResponse<>();
String orgId = ContextUtils.getLoginUser().getOrgId(); String orgId = ContextUtils.getLoginUser().getOrgId();
param.setOrgId(orgId); param.setOrgId(orgId);
param.setCreateBy(getUserId());
Page<TContractorAllowDTO> resultList= tContractorAllowService.pageList(param); Page<TContractorAllowDTO> resultList= tContractorAllowService.pageList(param);
BaseResponseList<TContractorAllowDTO> baseResponseList=new BaseResponseList<>(); BaseResponseList<TContractorAllowDTO> baseResponseList=new BaseResponseList<>();
baseResponseList.setData(resultList.getRecords()); baseResponseList.setData(resultList.getRecords());
...@@ -258,4 +261,13 @@ public class TContractorAllowController extends SuperController ...@@ -258,4 +261,13 @@ public class TContractorAllowController extends SuperController
return baseResponse; return baseResponse;
} }
@ApiOperation("删除准入管理数据并回退基本信息状态")
@GetMapping("/deleteAdmission")
public BaseResponse deleteAdmission(@RequestParam String id) throws BusinessException {
tContractorAllowService.deleteAdmissionAndRollback(
id);
return BaseResponse.success();
}
} }
...@@ -53,5 +53,11 @@ public class TContractorAllowDTO extends TContractorAllow { ...@@ -53,5 +53,11 @@ public class TContractorAllowDTO extends TContractorAllow {
@ApiModelProperty("工具id列表") @ApiModelProperty("工具id列表")
List<String> toolsIds; List<String> toolsIds;
@ApiModelProperty("是否可以修改(1:可以修改,0:不可以修改)")
private String modify;
@ApiModelProperty("是否需要审批(1:可以审批,0:不需要审批)")
private String approval;
} }
...@@ -40,4 +40,7 @@ public class TContractorAllowParam extends TContractorAllow { ...@@ -40,4 +40,7 @@ public class TContractorAllowParam extends TContractorAllow {
private String contractorName; private String contractorName;
private Map<String, Object> map; private Map<String, Object> map;
private String createBy;
} }
...@@ -6,6 +6,7 @@ import com.testor.module.contractor.manage.model.domain.TContractorAllow; ...@@ -6,6 +6,7 @@ import com.testor.module.contractor.manage.model.domain.TContractorAllow;
import com.testor.module.contractor.manage.model.dto.TContractorAllowDTO; import com.testor.module.contractor.manage.model.dto.TContractorAllowDTO;
import com.testor.module.contractor.manage.model.dto.TContractorAllowParam; import com.testor.module.contractor.manage.model.dto.TContractorAllowParam;
import com.testor.module.contractor.manage.model.dto.TContractorAllowPersonParam; import com.testor.module.contractor.manage.model.dto.TContractorAllowPersonParam;
import com.tongtech.tfw.backend.common.exception.BusinessException;
import com.tongtech.tfw.backend.common.models.supers.SuperService; import com.tongtech.tfw.backend.common.models.supers.SuperService;
/** /**
...@@ -21,4 +22,13 @@ public interface TContractorAllowService extends SuperService<TContractorAllow> ...@@ -21,4 +22,13 @@ public interface TContractorAllowService extends SuperService<TContractorAllow>
void submit(TContractorAllowParam tContractorAllow); void submit(TContractorAllowParam tContractorAllow);
void completeProcess(TContractorAllowParam tContractorAllowParam); void completeProcess(TContractorAllowParam tContractorAllowParam);
/**
* 删除准入记录并回滚流程
* @param allowId
* @param deleteReason
* @param operator
*/
void deleteAdmissionAndRollback(String allowId) throws BusinessException;
} }
...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.module.contractor.manage.model.domain.TContractorBasicInfo; import com.testor.module.contractor.manage.model.domain.TContractorBasicInfo;
import com.testor.module.contractor.manage.model.dto.ContractorInfoDTO; import com.testor.module.contractor.manage.model.dto.ContractorInfoDTO;
import com.testor.module.contractor.manage.model.dto.TContractorBasicInfoParam; import com.testor.module.contractor.manage.model.dto.TContractorBasicInfoParam;
import com.tongtech.tfw.backend.common.exception.BusinessException;
import com.tongtech.tfw.backend.common.models.supers.SuperService; import com.tongtech.tfw.backend.common.models.supers.SuperService;
/** /**
...@@ -40,4 +41,12 @@ public interface TContractorBasicInfoService extends SuperService<TContractorBas ...@@ -40,4 +41,12 @@ public interface TContractorBasicInfoService extends SuperService<TContractorBas
void submit(TContractorBasicInfoParam updateRequest); void submit(TContractorBasicInfoParam updateRequest);
void completeProcess(TContractorBasicInfoParam updateRequest); void completeProcess(TContractorBasicInfoParam updateRequest);
/**
* 驳回基本管理
* @param bizId
* @param rollbackReason
* @param operator
*/
void rollbackToPending(String bizId) throws BusinessException;
} }
package com.testor.module.contractor.manage.service.impl; package com.testor.module.contractor.manage.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.common.core.constant.Constants;
import com.testor.common.util.BeanConverUtil; import com.testor.common.util.BeanConverUtil;
import com.testor.module.contractor.common.model.constant.ContractorProcessStatus; import com.testor.module.contractor.common.model.constant.ContractorProcessStatus;
import com.testor.module.contractor.enums.ContractorFlowTypeEnum; import com.testor.module.contractor.enums.ContractorFlowTypeEnum;
import com.testor.module.contractor.manage.dao.TContractorAllowDao; import com.testor.module.contractor.manage.dao.TContractorAllowDao;
import com.testor.module.contractor.manage.model.domain.TContractorAllow; import com.testor.module.contractor.manage.model.domain.TContractorAllow;
import com.testor.module.contractor.manage.model.domain.TContractorBasicInfo;
import com.testor.module.contractor.manage.model.domain.TContractorPreparation; import com.testor.module.contractor.manage.model.domain.TContractorPreparation;
import com.testor.module.contractor.manage.model.dto.TContractorAllowDTO; import com.testor.module.contractor.manage.model.dto.TContractorAllowDTO;
import com.testor.module.contractor.manage.model.dto.TContractorAllowParam; import com.testor.module.contractor.manage.model.dto.TContractorAllowParam;
import com.testor.module.contractor.manage.model.dto.TContractorAllowPersonParam; import com.testor.module.contractor.manage.model.dto.TContractorAllowPersonParam;
import com.testor.module.contractor.manage.model.dto.TContractorPreparationParam; import com.testor.module.contractor.manage.model.dto.TContractorPreparationParam;
import com.testor.module.contractor.manage.service.TContractorAllowService; import com.testor.module.contractor.manage.service.TContractorAllowService;
import com.testor.module.contractor.manage.service.TContractorBasicInfoService;
import com.testor.module.contractor.manage.service.TContractorPreparationService; import com.testor.module.contractor.manage.service.TContractorPreparationService;
import com.testor.module.hazard.dao.TContractorAccessLogApprovalDao;
import com.testor.module.hazard.model.domain.TContractorAccessLogApproval;
import com.testor.module.hazard.service.TContractorAccessLogApprovalService;
import com.tongtech.tfw.backend.common.biz.constants.BizConstants; import com.tongtech.tfw.backend.common.biz.constants.BizConstants;
import com.tongtech.tfw.backend.common.exception.BusinessException;
import com.tongtech.tfw.backend.core.helper.StringHelper; import com.tongtech.tfw.backend.core.helper.StringHelper;
import com.tongtech.tfw.workflow.apis.definition.controller.ProcessDefinitionController; import com.tongtech.tfw.workflow.apis.definition.controller.ProcessDefinitionController;
import com.tongtech.tfw.workflow.apis.definition.model.dto.ProcessDefStartParam; import com.tongtech.tfw.workflow.apis.definition.model.dto.ProcessDefStartParam;
import com.tongtech.tfw.workflow.apis.task.controller.WfTaskController; import com.tongtech.tfw.workflow.apis.task.controller.WfTaskController;
import com.tongtech.tfw.workflow.apis.task.model.dto.CompleteTask; import com.tongtech.tfw.workflow.apis.task.model.dto.CompleteTask;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl; import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
/** /**
* 准入管理Service业务层处理 * 准入管理Service业务层处理
...@@ -35,6 +48,7 @@ import java.util.Map; ...@@ -35,6 +48,7 @@ import java.util.Map;
* @date 2024-11-26 14:07:35 * @date 2024-11-26 14:07:35
*/ */
@Service @Service
@Slf4j
public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAllowDao, TContractorAllow> implements TContractorAllowService public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAllowDao, TContractorAllow> implements TContractorAllowService
{ {
@Autowired(required = false) @Autowired(required = false)
...@@ -49,6 +63,12 @@ public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAll ...@@ -49,6 +63,12 @@ public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAll
@Autowired @Autowired
private TContractorPreparationService tContractorPreparationService; private TContractorPreparationService tContractorPreparationService;
@Autowired
private TContractorAccessLogApprovalDao contractorAccessLogApprovalDao;
@Autowired
private TContractorBasicInfoService tContractorBasicInfoService;
@Override @Override
public Page<TContractorAllowDTO> pageList(TContractorAllowParam param) { public Page<TContractorAllowDTO> pageList(TContractorAllowParam param) {
Long page= Long page=
...@@ -57,7 +77,32 @@ public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAll ...@@ -57,7 +77,32 @@ public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAll
StringHelper.isEmpty(param.getLimit())?BizConstants.LIMIT:Long.valueOf(param.getLimit()); StringHelper.isEmpty(param.getLimit())?BizConstants.LIMIT:Long.valueOf(param.getLimit());
Page<TContractorAllow> resultPage=new Page<>(page,limit); Page<TContractorAllow> resultPage=new Page<>(page,limit);
// TODO 根据需求修改查询条件及查询参数 // TODO 根据需求修改查询条件及查询参数
return tContractorAllowDao.pageList(resultPage,param); Page<TContractorAllowDTO> tContractorAllowDTOPage = tContractorAllowDao.pageList(resultPage, param);
for(TContractorAllowDTO tContractorAllowDTO:tContractorAllowDTOPage.getRecords()){
if(param.getCreateBy()!=null){
tContractorAllowDTO.setApproval(param.getCreateBy().equals(tContractorAllowDTO.getCreateBy())? Constants.APPROVAL_STATUS_ONE:Constants.APPROVAL_STATUS_ZERO);
List<TContractorAccessLogApproval> tContractorAccessLogApprovals = contractorAccessLogApprovalDao.selectByContractorAllowIdAndCreateBy(tContractorAllowDTO.getId(), param.getCreateBy());
if(CollectionUtils.isNotEmpty(tContractorAccessLogApprovals) && tContractorAllowDTO.getProcessStatus().equals(ContractorProcessStatus.APPROVED.getDescription())){
//上一次的状态已通过
if(contractorAccessLogApprovalDao.selectCountByContractorAllowIdAndApprovalStatus(tContractorAllowDTO.getId(), ContractorProcessStatus.UNDER_REVIEW.getValue())>0){
//有审批中记录
tContractorAllowDTO.setApproval(Constants.APPROVAL_STATUS_ONE);
tContractorAllowDTO.setModify(Constants.MODIFY_STATUS_ZERO);
}else{
tContractorAllowDTO.setApproval(Constants.APPROVAL_STATUS_ZERO);
tContractorAllowDTO.setModify(Constants.MODIFY_STATUS_ONE);
}
}else{
tContractorAllowDTO.setApproval(Constants.APPROVAL_STATUS_ZERO);
tContractorAllowDTO.setModify(Constants.MODIFY_STATUS_ZERO);
}
}else{
tContractorAllowDTO.setApproval(Constants.APPROVAL_STATUS_ZERO);
tContractorAllowDTO.setModify(Constants.APPROVAL_STATUS_ZERO);
}
}
return tContractorAllowDTOPage;
} }
@Override @Override
...@@ -165,4 +210,94 @@ public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAll ...@@ -165,4 +210,94 @@ public class TContractorAllowServiceImpl extends SuperServiceImpl<TContractorAll
} }
return queryWrapper; return queryWrapper;
} }
/**
* 删除准入管理数据并回退基本信息状态
*/
@Override
public void deleteAdmissionAndRollback(String allowId) throws BusinessException {
// 1. 查询准入管理数据
TContractorAllow contractorAllow = this.getById(allowId);
if (contractorAllow == null) {
throw new BusinessException("准入管理数据不存在");
}
String bizId = contractorAllow.getBizId(); // 对应的基本信息ID
// 2. 回退基本信息状态为"待提交"
rollbackBasicInfoStatus(bizId);
// 3. 删除准入管理数据
this.removeById(allowId);
log.info("准入管理数据删除成功,业务ID: {}, 删除原因: {}", bizId);
}
/**
* 批量删除准入管理数据
*/
public void batchDeleteAdmission(List<String> allowIds, String deleteReason, String operator) {
if (CollectionUtils.isEmpty(allowIds)) {
return;
}
for (String allowId : allowIds) {
try {
deleteAdmissionAndRollback(allowId);
} catch (Exception e) {
log.error("删除准入管理数据失败,ID: {}", allowId, e);
// 继续处理其他数据,不中断批量操作
}
}
}
/**
* 根据基本信息ID删除所有相关的准入管理数据
*/
public void deleteAdmissionByBizId(String bizId) throws BusinessException {
// 查询所有相关的准入管理数据
List<TContractorAllow> allowList = this.list(
new LambdaQueryWrapper<TContractorAllow>()
.eq(TContractorAllow::getBizId, bizId)
);
if (CollectionUtils.isEmpty(allowList)) {
log.warn("未找到业务ID: {} 对应的准入管理数据", bizId);
return;
}
// 回退基本信息状态
rollbackBasicInfoStatus(bizId);
// 批量删除准入管理数据
List<String> allowIds = allowList.stream()
.map(TContractorAllow::getId)
.collect(Collectors.toList());
this.removeByIds(allowIds);
log.info("根据业务ID删除准入管理数据成功,业务ID: {}, 删除记录数: {}", bizId, allowList.size());
}
/**
* 回退基本信息状态为"待提交"
*/
private void rollbackBasicInfoStatus(String bizId) throws BusinessException {
TContractorBasicInfo basicInfo = tContractorBasicInfoService.getById(bizId);
if (basicInfo == null) {
throw new BusinessException("基本信息数据不存在,ID: " + bizId);
}
// 更新基本信息状态为"待提交"(假设待提交的状态值为0)
basicInfo.setProcessStatus(ContractorProcessStatus.PENDING_SUBMISSION.getValue()); // 根据您的状态枚举调整
tContractorBasicInfoService.updateById(basicInfo);
log.info("基本信息状态已回退为待提交,业务ID: {}", bizId);
}
} }
...@@ -15,6 +15,7 @@ import com.testor.module.contractor.manage.model.dto.TContractorBasicInfoParam; ...@@ -15,6 +15,7 @@ import com.testor.module.contractor.manage.model.dto.TContractorBasicInfoParam;
import com.testor.module.contractor.manage.service.TContractorAllowService; import com.testor.module.contractor.manage.service.TContractorAllowService;
import com.testor.module.contractor.manage.service.TContractorBasicInfoService; import com.testor.module.contractor.manage.service.TContractorBasicInfoService;
import com.tongtech.tfw.backend.common.biz.constants.BizConstants; import com.tongtech.tfw.backend.common.biz.constants.BizConstants;
import com.tongtech.tfw.backend.common.exception.BusinessException;
import com.tongtech.tfw.backend.core.helper.IdHelper; import com.tongtech.tfw.backend.core.helper.IdHelper;
import com.tongtech.tfw.backend.core.helper.StringHelper; import com.tongtech.tfw.backend.core.helper.StringHelper;
import com.tongtech.tfw.backend.core.helper.bean.BeanHelper; import com.tongtech.tfw.backend.core.helper.bean.BeanHelper;
...@@ -22,6 +23,7 @@ import com.tongtech.tfw.workflow.apis.definition.controller.ProcessDefinitionCon ...@@ -22,6 +23,7 @@ import com.tongtech.tfw.workflow.apis.definition.controller.ProcessDefinitionCon
import com.tongtech.tfw.workflow.apis.definition.model.dto.ProcessDefStartParam; import com.tongtech.tfw.workflow.apis.definition.model.dto.ProcessDefStartParam;
import com.tongtech.tfw.workflow.apis.task.controller.WfTaskController; import com.tongtech.tfw.workflow.apis.task.controller.WfTaskController;
import com.tongtech.tfw.workflow.apis.task.model.dto.CompleteTask; import com.tongtech.tfw.workflow.apis.task.model.dto.CompleteTask;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl; import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -39,6 +41,7 @@ import java.util.stream.Collectors; ...@@ -39,6 +41,7 @@ import java.util.stream.Collectors;
* @date 2024-11-22 21:03:04 * @date 2024-11-22 21:03:04
*/ */
@Service @Service
@Slf4j
public class TContractorBasicInfoServiceImpl extends SuperServiceImpl<TContractorBasicInfoDao, TContractorBasicInfo> implements TContractorBasicInfoService public class TContractorBasicInfoServiceImpl extends SuperServiceImpl<TContractorBasicInfoDao, TContractorBasicInfo> implements TContractorBasicInfoService
{ {
@Autowired(required = false) @Autowired(required = false)
...@@ -182,4 +185,42 @@ public class TContractorBasicInfoServiceImpl extends SuperServiceImpl<TContracto ...@@ -182,4 +185,42 @@ public class TContractorBasicInfoServiceImpl extends SuperServiceImpl<TContracto
} }
} }
} }
/**
* 回退基本信息状态为待提交
*/
@Transactional(rollbackFor = Exception.class)
public void rollbackToPending(String bizId) throws BusinessException {
TContractorBasicInfo basicInfo = this.getById(bizId);
if (basicInfo == null) {
throw new BusinessException("基本信息数据不存在");
}
// 验证当前状态是否可以回退(只有已审批通过的状态可以回退)
if (!ContractorProcessStatus.APPROVED.getValue().equals(basicInfo.getProcessStatus())) {
throw new BusinessException("当前状态无法回退,只有已审批通过的状态可以回退");
}
// 更新状态为待提交
basicInfo.setProcessStatus("0"); // 待提交状态值
this.updateById(basicInfo);
log.info("基本信息状态回退成功,业务ID: {}, 回退原因: {}", bizId);
}
/**
* 检查是否可以删除准入管理(状态验证)
*/
public boolean canDeleteAdmission(String bizId) {
TContractorBasicInfo basicInfo = this.getById(bizId);
if (basicInfo == null) {
return false;
}
// 只有已审批通过的状态才允许删除准入管理
return ContractorProcessStatus.APPROVED.getValue().equals(basicInfo.getProcessStatus());
}
} }
package com.testor.module.hazard.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.biz.sys.user.model.domain.SysUser;
import com.testor.module.contractor.common.model.constant.ContractorProcessStatus;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.domain.TContractorAccessLogApproval;
import com.testor.module.hazard.model.dto.TContractorAccessLogApprovalParam;
import com.testor.module.hazard.model.dto.TContractorAccessLogParam;
import com.testor.module.hazard.service.TContractorAccessLogApprovalService;
import com.testor.module.iam.service.SysUserService;
import com.tongtech.tfw.backend.common.biz.models.BaseResponse;
import com.tongtech.tfw.backend.common.biz.models.BaseResponseList;
import com.tongtech.tfw.backend.common.models.supers.SuperController;
import com.tongtech.tfw.backend.core.helper.ObjectHelper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/hazard/accessLogApproval")
@Api(value = "TContractorAccessLog", tags = "承包商修改日志审核")
@Slf4j
public class TContractorAccessLogApprovalController extends SuperController {
@Autowired
private TContractorAccessLogApprovalService tContractorAccessLogApprovalService;
@Autowired
private SysUserService userService;
@ApiOperation(value = "新增 承包商修改日志审核", notes = "Add TContractorAccessLog")
@PostMapping(value = "/add")
public BaseResponse<TContractorAccessLogApproval> addEntity(@RequestBody List<TContractorAccessLogApproval> addRequest) {
BaseResponse<TContractorAccessLogApproval> baseResponse=new BaseResponse<>();
if(ObjectHelper.isNotEmpty(addRequest)){
tContractorAccessLogApprovalService.insertBatchContractorAccessLog(addRequest);
}
return baseResponse;
}
@ApiOperation(value = "获取 承包商修改日志审核 分页列表", notes = "List THazardWorkPlan with page")
@GetMapping(value = "/list")
public BaseResponse<BaseResponseList<TContractorAccessLogApproval>>listEntity(TContractorAccessLogApprovalParam param){
BaseResponse<BaseResponseList<TContractorAccessLogApproval>>baseResponse=new BaseResponse<>();
Page<TContractorAccessLogApproval> tContractorAccessLogApprovalPage = tContractorAccessLogApprovalService.queryContractorAccessLogApproval(param);
BaseResponseList<TContractorAccessLogApproval> baseResponseList=new BaseResponseList<>();
baseResponseList.setData(tContractorAccessLogApprovalPage.getRecords());
baseResponseList.setTotal(tContractorAccessLogApprovalPage.getTotal());
baseResponse.setData(baseResponseList);
return baseResponse;
}
@ApiOperation(value = "准入管理修改获取审批人", notes = "List THazardWorkPlan with page")
@GetMapping(value = "/selectUserIdsByOrgId")
public BaseResponse<List<SysUser>> selectUserIdsByOrgId(@RequestParam("orgId") String orgId){
BaseResponse<List<SysUser>> baseResponse=new BaseResponse<>();
List<SysUser> sysUsers = userService.selectUserIdsByOrgId(orgId);
baseResponse.setData(sysUsers);
return baseResponse;
}
@ApiOperation(value = "根据合同准入管理ID和审批状态查询审批记录数量", notes = "List THazardWorkPlan with page")
@GetMapping(value = "/selectCountByContractorAllowIdAndApprovalStatus")
public BaseResponse<Integer> selectCountByContractorAllowIdAndApprovalStatus(@RequestParam("contractorAllowId") String contractorAllowId){
BaseResponse<Integer>baseResponse=new BaseResponse<>();
int count = tContractorAccessLogApprovalService.selectCountByContractorAllowIdAndApprovalStatus(contractorAllowId, ContractorProcessStatus.UNDER_REVIEW.getValue());
baseResponse.setData(count);
return baseResponse;
}
@ApiOperation(value = "批量更新审批状态", notes = "List THazardWorkPlan with page")
@GetMapping(value = "/批量更新审批状态")
public BaseResponse<Integer> updateApprovalStatus(@RequestParam("ids") List<String> ids,@RequestParam("approvalStatus") String approvalStatus){
BaseResponse<Integer>baseResponse=new BaseResponse<>();
int count = tContractorAccessLogApprovalService.updateApprovalStatus(ids, approvalStatus);
baseResponse.setData(count);
return baseResponse;
}
}
package com.testor.module.hazard.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.dto.TContractorAccessLogParam;
import com.testor.module.hazard.service.TContractorAccessLogService;
import com.tongtech.tfw.backend.common.biz.models.BaseResponse;
import com.tongtech.tfw.backend.common.biz.models.BaseResponseList;
import com.tongtech.tfw.backend.common.models.supers.SuperController;
import com.tongtech.tfw.backend.core.helper.ObjectHelper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Description: 承包商修改日志
*/
@RestController
@RequestMapping("/hazard/accessLog")
@Api(value = "TContractorAccessLog", tags = "承包商修改日志")
@Slf4j
public class TContractorAccessLogController extends SuperController{
@Autowired
private TContractorAccessLogService tContractorAccessLogService;
@ApiOperation(value = "新增 承包商修改日志", notes = "Add TContractorAccessLog")
@PostMapping(value = "/add")
public BaseResponse<List<TContractorAccessLog>> addEntity(@RequestBody List<TContractorAccessLog> addRequest) {
BaseResponse<List<TContractorAccessLog>> baseResponse = new BaseResponse<>();
if (ObjectHelper.isNotEmpty(addRequest)) {
List<TContractorAccessLog> result = tContractorAccessLogService.insertBatchContractorAccessLog(addRequest);
baseResponse.setData(result);
}
return baseResponse;
}
@ApiOperation(value = "获取 承包商修改日志 分页列表", notes = "List THazardWorkPlan with page")
@GetMapping(value = "/list")
public BaseResponse<BaseResponseList<TContractorAccessLog>>listEntity(TContractorAccessLogParam param){
BaseResponse<BaseResponseList<TContractorAccessLog>>baseResponse=new BaseResponse<>();
Page<TContractorAccessLog> tContractorAccessLogPage = tContractorAccessLogService.queryContractorAccessLog(param);
BaseResponseList<TContractorAccessLog> baseResponseList=new BaseResponseList<>();
baseResponseList.setData(tContractorAccessLogPage.getRecords());
baseResponseList.setTotal(tContractorAccessLogPage.getTotal());
baseResponse.setData(baseResponseList);
return baseResponse;
}
@ApiOperation(value = "获取最大批次")
@GetMapping(value = "/getMaxBatch")
public BaseResponse<String> getMaxBatch(@RequestParam String contractorAllowId){
BaseResponse<String> baseResponse=new BaseResponse<>();
String maxBatch = tContractorAccessLogService.getMaxBatch(contractorAllowId);
baseResponse.setData(maxBatch);
return baseResponse;
}
}
package com.testor.module.hazard.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.testor.module.hazard.model.domain.TContractorAccessLogApproval;
import com.tongtech.tfw.backend.common.models.supers.SuperDao;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* 承包商准入管理访问日志审批表Mapper接口
*
* @author testor-framework
* @date 2025-01-20
*/
@Mapper
public interface TContractorAccessLogApprovalDao extends BaseMapper<TContractorAccessLogApproval>, SuperDao<TContractorAccessLogApproval> {
/**
* 根据合同准入管理ID和创建人查询审批记录
*
* @param contractorAllowId 合同准入管理ID
* @param createBy 创建人
* @return 审批记录
*/
List<TContractorAccessLogApproval> selectByContractorAllowIdAndCreateBy(@Param("contractorAllowId") String contractorAllowId, @Param("createBy") String createBy);
/**
* 根据合同准入管理ID和审批状态查询审批记录数量
*
* @param contractorAllowId 合同准入管理ID
* @param approvalStatus 审批状态
* @return 审批记录数量
*/
@Select("select count(1) from t_contractor_access_log_approval\n" +
"where contractor_allow_id = #{contractorAllowId} and approval_status = #{approvalStatus}")
int selectCountByContractorAllowIdAndApprovalStatus(@Param("contractorAllowId") String contractorAllowId, @Param("approvalStatus") String approvalStatus);
/**
* 批量更新审批状态
*
* @param ids
* @param approvalStatus 审批状态
* @return 更新数量
*/
int updateApprovalStatus(@Param("ids") List<String> ids, @Param("approvalStatus") String approvalStatus);
}
package com.testor.module.hazard.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.tongtech.tfw.backend.common.models.supers.SuperDao;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/**
* 承包商准入管理访问日志Mapper接口
*
* @author testor-framework
* @date 2025-01-20
*/
@Mapper
public interface TContractorAccessLogDao extends BaseMapper<TContractorAccessLog>, SuperDao<TContractorAccessLog> {
/**
* 获取最大批次
* @param contractorAllowId
* @return
*/
@Select("select max(batch) from t_contractor_access_log\n" +
"where contractor_allow_id = #{contractorAllowId}")
String getMaxBatch(@Param("contractorAllowId") String contractorAllowId);
}
package com.testor.module.hazard.model.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.tongtech.tfw.backend.common.models.supers.SuperModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import lombok.experimental.SuperBuilder;
import lombok.EqualsAndHashCode;
/**
* 承包商准入管理访问日志对象 t_contractor_access_log
*
* @author testor-framework
* @date 2025-01-20
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_contractor_access_log")
@ApiModel(value = "TContractorAccessLog对象", description = "承包商准入管理访问日志")
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
public class TContractorAccessLog extends SuperModel {
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ApiModelProperty(value = "主键ID")
@TableId("id")
private String id;
/**
* 准入管理对象ID
*/
@ApiModelProperty(value = "准入管理对象ID")
@TableField("contractor_allow_id")
private String contractorAllowId;
/**
* 姓名
*/
@ApiModelProperty(value = "姓名")
@TableField("person_name")
private String personName;
/**
* 性别
*/
@ApiModelProperty(value = "性别")
@TableField("gender")
private String gender;
/**
* 身份证号
*/
@ApiModelProperty(value = "身份证号")
@TableField("id_card_no")
private String idCardNo;
/**
* 年龄
*/
@ApiModelProperty(value = "年龄")
@TableField("age")
private Integer age;
/**
* 岗位性质id(数据字典id)
*/
@ApiModelProperty(value = "岗位性质id(数据字典id)")
@TableField("job_nature_id")
private String jobNatureId;
/**
* 岗位性质
*/
@ApiModelProperty(value = "岗位性质")
@TableField("job_nature")
private String jobNature;
/**
* 岗位名称id(数据字典id)
*/
@ApiModelProperty(value = "岗位名称id(数据字典id)")
@TableField("job_title_id")
private String jobTitleId;
/**
* 岗位名称
*/
@ApiModelProperty(value = "岗位名称")
@TableField("job_title")
private String jobTitle;
/**
* 联系电话
*/
@ApiModelProperty(value = "联系电话")
@TableField("tel")
private String tel;
/**
* 所属企业id
*/
@ApiModelProperty(value = "所属企业id")
@TableField("org_id")
private String orgId;
/**
* 工器具名称
*/
@ApiModelProperty(value = "工器具名称")
@TableField("tools_name")
private String toolsName;
/**
* 工器具类别id(数据字典id)
*/
@ApiModelProperty(value = "工器具类别id(数据字典id)")
@TableField("tools_type_id")
private String toolsTypeId;
/**
* 工器具类别
*/
@ApiModelProperty(value = "工器具类别")
@TableField("tools_type")
private String toolsType;
/**
* 工器具型号
*/
@ApiModelProperty(value = "工器具型号")
@TableField("tools_model")
private String toolsModel;
/**
* 工器具数量
*/
@ApiModelProperty(value = "工器具数量")
@TableField("tools_num")
private Integer toolsNum;
/**
* 工器具用途
*/
@ApiModelProperty(value = "工器具用途")
@TableField("tools_purpose")
private String toolsPurpose;
/**
* 工器具是否合格 0 不合格 1 合格
*/
@ApiModelProperty(value = "工器具是否合格 0 不合格 1 合格")
@TableField("tools_is_pass")
private String toolsIsPass;
/**
* 物料名称
*/
@ApiModelProperty(value = "物料名称")
@TableField("material_name")
private String materialName;
/**
* 物料类别id(数据字典id)
*/
@ApiModelProperty(value = "物料类别id(数据字典id)")
@TableField("material_type_id")
private String materialTypeId;
/**
* 物料类别
*/
@ApiModelProperty(value = "物料类别")
@TableField("material_type")
private String materialType;
/**
* 危险性id(数据字典id)
*/
@ApiModelProperty(value = "危险性id(数据字典id)")
@TableField("risk_id")
private String riskId;
/**
* 危险性
*/
@ApiModelProperty(value = "危险性")
@TableField("risk")
private String risk;
/**
* 物料型号
*/
@ApiModelProperty(value = "物料型号")
@TableField("material_model")
private String materialModel;
/**
* 物料数量
*/
@ApiModelProperty(value = "物料数量")
@TableField("material_num")
private Integer materialNum;
/**
* 物料用途
*/
@ApiModelProperty(value = "物料用途")
@TableField("material_purpose")
private String materialPurpose;
/**
* 防护用品名称
*/
@ApiModelProperty(value = "防护用品名称")
@TableField("equipment_name")
private String equipmentName;
/**
* 防护用品类别id(数据字典id)
*/
@ApiModelProperty(value = "防护用品类别id(数据字典id)")
@TableField("type_id")
private String typeId;
/**
* 防护用品类别
*/
@ApiModelProperty(value = "防护用品类别")
@TableField("equipment_type")
private String equipmentType;
/**
* 常规用品 0否 1是
*/
@ApiModelProperty(value = "常规用品 0否 1是")
@TableField("is_general")
private String isGeneral;
/**
* 防护用品型号
*/
@ApiModelProperty(value = "防护用品型号")
@TableField("equipment_model")
private String equipmentModel;
/**
* 防护用品数量
*/
@ApiModelProperty(value = "防护用品数量")
@TableField("equipment_num")
private Integer equipmentNum;
/**
* 防护用品用途
*/
@ApiModelProperty(value = "防护用品用途")
@TableField("equipment_purpose")
private String equipmentPurpose;
/**
* 批次
*/
@ApiModelProperty(value = "批次")
@TableField("batch")
private String batch;
/**
* 修改项(1:人员 2:工器具 3:防护用品数量 4:防护用品数量)
*/
@ApiModelProperty(value = "修改项(1:人员 2:工器具 3:防护用品数量 4:物料数量)")
@TableField("type")
private String type;
/**
* 历史内容
*/
@ApiModelProperty(value = "历史内容")
@TableField("historical_content")
private String historicalContent;
@TableField(exist = false)
private String createByName;
// 常量定义
public static final String ID = "id";
public static final String CONTRACTOR_ALLOW_ID = "contractor_allow_id";
public static final String PERSON_NAME = "person_name";
public static final String GENDER = "gender";
public static final String ID_CARD_NO = "id_card_no";
public static final String AGE = "age";
public static final String JOB_NATURE_ID = "job_nature_id";
public static final String JOB_NATURE = "job_nature";
public static final String JOB_TITLE_ID = "job_title_id";
public static final String JOB_TITLE = "job_title";
public static final String TEL = "tel";
public static final String STATUS = "status";
public static final String ORG_ID = "org_id";
public static final String TOOLS_NAME = "tools_name";
public static final String TOOLS_TYPE_ID = "tools_type_id";
public static final String TOOLS_TYPE = "tools_type";
public static final String TOOLS_MODEL = "tools_model";
public static final String TOOLS_NUM = "tools_num";
public static final String TOOLS_PURPOSE = "tools_purpose";
public static final String TOOLS_IS_PASS = "tools_is_pass";
public static final String MATERIAL_NAME = "material_name";
public static final String MATERIAL_TYPE_ID = "material_type_id";
public static final String MATERIAL_TYPE = "material_type";
public static final String RISK_ID = "risk_id";
public static final String RISK = "risk";
public static final String MATERIAL_MODEL = "material_model";
public static final String MATERIAL_NUM = "material_num";
public static final String MATERIAL_PURPOSE = "material_purpose";
public static final String EQUIPMENT_NAME = "equipment_name";
public static final String TYPE_ID = "type_id";
public static final String EQUIPMENT_TYPE = "equipment_type";
public static final String IS_GENERAL = "is_general";
public static final String EQUIPMENT_MODEL = "equipment_model";
public static final String EQUIPMENT_NUM = "equipment_num";
public static final String EQUIPMENT_PURPOSE = "equipment_purpose";
public static final String BATCH = "batch";
public static final String REMARKS = "remarks";
public static final String TYPE = "type";
}
\ No newline at end of file
package com.testor.module.hazard.model.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.tongtech.tfw.backend.common.models.supers.SuperModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import lombok.experimental.SuperBuilder;
/**
* 承包商准入管理访问日志审批表对象 t_contractor_access_log_approval
*
* @author testor-framework
* @date 2025-01-20
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_contractor_access_log_approval")
@ApiModel(value = "TContractorAccessLogApproval对象", description = "承包商准入管理访问日志审批表")
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
public class TContractorAccessLogApproval extends SuperModel {
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ApiModelProperty(value = "主键ID")
@TableId("id")
private String id;
/**
* 准入管理对象ID
*/
@ApiModelProperty(value = "准入管理对象ID")
@TableField("contractor_allow_id")
private String contractorAllowId;
/**
* 承包商准入管理访问日志ID
*/
@ApiModelProperty(value = "承包商准入管理访问日志ID")
@TableField("access_log_id")
private String accessLogId;
/**
* 审核人姓名
*/
@ApiModelProperty(value = "审核人姓名")
@TableField("name")
private String name;
/**
* 审核内容
*/
@ApiModelProperty(value = "审核内容")
@TableField("approval_content")
private String approvalContent;
/**
* 审批状态(1:通过 2:进行中 3:驳回)
*/
@ApiModelProperty(value = "审批状态(1:通过 2:进行中 3:驳回)")
@TableField("approval_status")
private String approvalStatus;
/**
* 审批时间
*/
@ApiModelProperty(value = "审批时间")
@TableField("approval_time")
private String approvalTime;
@TableField(exist = false)
@ApiModelProperty(value = "修改日志")
private TContractorAccessLog tContractorAccessLog;
/**
* 审核人id
*/
@ApiModelProperty(value = "审核人id")
@TableField("name_by")
private String nameBy;
// 常量定义
public static final String ID = "id";
public static final String ACCESS_LOG_ID = "access_log_id";
public static final String NAME = "name";
public static final String APPROVAL_CONTENT = "approval_content";
public static final String APPROVAL_STATUS = "approval_status";
public static final String STATUS = "status";
public static final String REMARKS = "remarks";
}
package com.testor.module.hazard.model.dto;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.domain.TContractorAccessLogApproval;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 危险作业计划 删除参数对象
*
* @author testor-framework
* @date 2024-12-19 10:39:26
*/
@Data
@ApiModel(value = "THazardWorkPlan 列表查询参数对象")
@EqualsAndHashCode(callSuper = true)
public class TContractorAccessLogApprovalParam extends TContractorAccessLogApproval {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "每页数量")
private String limit;
@ApiModelProperty(value = "当前页数")
private String page;
@ApiModelProperty(value = "排序字段")
private String orderBy;
@ApiModelProperty(value = "排序方式")
private String orderType;
}
package com.testor.module.hazard.model.dto;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.domain.THazardWorkPlan;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 危险作业计划 删除参数对象
*
* @author testor-framework
* @date 2024-12-19 10:39:26
*/
@Data
@ApiModel(value = "THazardWorkPlan 列表查询参数对象")
@EqualsAndHashCode(callSuper = true)
public class TContractorAccessLogParam extends TContractorAccessLog {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "每页数量")
private String limit;
@ApiModelProperty(value = "当前页数")
private String page;
@ApiModelProperty(value = "排序字段")
private String orderBy;
@ApiModelProperty(value = "排序方式")
private String orderType;
}
package com.testor.module.hazard.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.domain.TContractorAccessLogApproval;
import com.testor.module.hazard.model.dto.TContractorAccessLogApprovalParam;
import com.testor.module.hazard.model.dto.TContractorAccessLogParam;
import com.tongtech.tfw.backend.common.models.supers.SuperService;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface TContractorAccessLogApprovalService extends SuperService<TContractorAccessLogApproval> {
/**
* 批量插入
* @param tContractorAccessLogApprovals
*/
void insertBatchContractorAccessLog(List<TContractorAccessLogApproval> tContractorAccessLogApprovals);
/**
* 查询承包商访问日志审批
* @param param
* @return
*/
Page<TContractorAccessLogApproval> queryContractorAccessLogApproval(TContractorAccessLogApprovalParam param);
/**
* 根据合同准入管理ID和创建人查询审批记录
*
* @param contractorAllowId 合同准入管理ID
* @param createBy 创建人
* @return 审批记录
*/
List<TContractorAccessLogApproval> selectByContractorAllowIdAndCreateBy(String contractorAllowId,String createBy);
/**
* 根据合同准入管理ID和审批状态查询审批记录数量
*
* @param contractorAllowId 合同准入管理ID
* @param approvalStatus 审批状态
* @return 审批记录数量
*/
int selectCountByContractorAllowIdAndApprovalStatus(String contractorAllowId,String approvalStatus);
/**
* 批量更新审批状态
*
* @param ids
* @param approvalStatus 审批状态
* @return 更新数量
*/
int updateApprovalStatus(List<String> ids,String approvalStatus);
}
package com.testor.module.hazard.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.module.hazard.dao.TContractorAccessLogApprovalDao;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.domain.TContractorAccessLogApproval;
import com.testor.module.hazard.model.dto.TContractorAccessLogApprovalParam;
import com.testor.module.hazard.model.dto.TContractorAccessLogParam;
import com.testor.module.hazard.service.TContractorAccessLogApprovalService;
import com.testor.module.hazard.service.TContractorAccessLogService;
import com.tongtech.tfw.backend.common.biz.constants.BizConstants;
import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl;
import com.tongtech.tfw.backend.core.helper.StringHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class TContractorAccessLogApprovalServiceImpl extends SuperServiceImpl<TContractorAccessLogApprovalDao, TContractorAccessLogApproval> implements TContractorAccessLogApprovalService {
@Autowired
private TContractorAccessLogService contractorAccessLogService;
@Override
public void insertBatchContractorAccessLog(List<TContractorAccessLogApproval> tContractorAccessLogApprovals) {
this.saveBatch(tContractorAccessLogApprovals);
}
@Override
public Page<TContractorAccessLogApproval> queryContractorAccessLogApproval(TContractorAccessLogApprovalParam param) {
Long page =
StringHelper.isEmpty(param.getPage()) ? BizConstants.PAGE : Long.valueOf(param.getPage());
Long limit =
StringHelper.isEmpty(param.getLimit()) ? BizConstants.LIMIT : Long.valueOf(param.getLimit());
Page<TContractorAccessLogApproval> resultPage = new Page<>(page, limit); // 修改此处泛型类型
QueryWrapper<TContractorAccessLogApproval> queryWrapper = this.createQuery(param);
Page<TContractorAccessLogApproval> tContractorAccessLogPage = this.page(resultPage, queryWrapper);
tContractorAccessLogPage.getRecords().forEach(tContractorAccessLogApproval -> {
tContractorAccessLogApproval.setTContractorAccessLog(
contractorAccessLogService.getById(tContractorAccessLogApproval.getTContractorAccessLog()));
});
return tContractorAccessLogPage;
}
@Override
public List<TContractorAccessLogApproval> selectByContractorAllowIdAndCreateBy(String contractorAllowId, String createBy) {
return baseMapper.selectByContractorAllowIdAndCreateBy(contractorAllowId, createBy);
}
@Override
public int selectCountByContractorAllowIdAndApprovalStatus(String contractorAllowId, String approvalStatus) {
return baseMapper.selectCountByContractorAllowIdAndApprovalStatus(contractorAllowId, approvalStatus);
}
@Override
public int updateApprovalStatus(List<String> ids, String approvalStatus) {
return baseMapper.updateApprovalStatus(ids, approvalStatus);
}
private QueryWrapper<TContractorAccessLogApproval> createQuery(TContractorAccessLogApprovalParam queryParam) {
QueryWrapper<TContractorAccessLogApproval> queryWrapper = new QueryWrapper<>();
if (StringHelper.isNotEmpty(queryParam.getContractorAllowId())) {
queryWrapper.like("contractor_allow_id", queryParam.getContractorAllowId());
}
if (StringHelper.isNotEmpty(queryParam.getApprovalStatus())) {
queryWrapper.like("approval_status", queryParam.getApprovalStatus());
}
queryWrapper.orderByDesc(TContractorAccessLogApproval.CREATE_DATE);
return queryWrapper;
}
}
package com.testor.module.hazard.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.biz.sys.user.model.domain.SysUser;
import com.testor.module.hazard.dao.TContractorAccessLogDao;
import com.testor.module.hazard.model.domain.TContractorAccessLog;
import com.testor.module.hazard.model.domain.THazardWorkPlan;
import com.testor.module.hazard.model.dto.TContractorAccessLogParam;
import com.testor.module.hazard.model.dto.THazardWorkPlanParam;
import com.testor.module.hazard.service.TContractorAccessLogService;
import com.testor.module.iam.service.SysUserService;
import com.tongtech.tfw.backend.common.biz.constants.BizConstants;
import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl;
import com.tongtech.tfw.backend.core.helper.StringHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@Service
public class TContractorAccessLogServiceImpl extends SuperServiceImpl<TContractorAccessLogDao, TContractorAccessLog> implements TContractorAccessLogService{
@Autowired
private SysUserService userService;
@Override
public List<TContractorAccessLog> insertBatchContractorAccessLog(List<TContractorAccessLog> tContractorAccessLogs) {
if (tContractorAccessLogs == null || tContractorAccessLogs.isEmpty()) {
return new ArrayList<>();
}
// 保持原有逻辑
this.saveBatch(tContractorAccessLogs);
// 直接返回传入的对象(此时对象中已经包含了您自己填充的主键)
return tContractorAccessLogs;
}
@Override
public Page<TContractorAccessLog> queryContractorAccessLog(TContractorAccessLogParam param) {
Long page =
StringHelper.isEmpty(param.getPage()) ? BizConstants.PAGE : Long.valueOf(param.getPage());
Long limit =
StringHelper.isEmpty(param.getLimit()) ? BizConstants.LIMIT : Long.valueOf(param.getLimit());
Page<TContractorAccessLog> resultPage = new Page<>(page, limit); // 修改此处泛型类型
QueryWrapper<TContractorAccessLog> queryWrapper = this.createQuery(param);
Page<TContractorAccessLog> tContractorAccessLogPage = this.page(resultPage, queryWrapper);
// 关联查询创建人姓名
tContractorAccessLogPage.getRecords().forEach(log -> {
SysUser user = userService.getById(log.getCreateBy());
if(null != user){
log.setCreateByName(user.getUserName());
}
});
return tContractorAccessLogPage;
}
@Override
public String getMaxBatch(String contractorAllowId) {
return baseMapper.getMaxBatch(contractorAllowId);
}
private QueryWrapper<TContractorAccessLog> createQuery(TContractorAccessLogParam queryParam) {
QueryWrapper<TContractorAccessLog> queryWrapper = new QueryWrapper<>();
if (StringHelper.isNotEmpty(queryParam.getContractorAllowId())) {
queryWrapper.like("contractor_allow_id", queryParam.getContractorAllowId());
}
queryWrapper.orderByDesc("batch", "create_date");
return queryWrapper;
}
}
package com.testor.module.iam.dao;
import com.testor.biz.sys.user.model.domain.SysUser;
import com.testor.module.iam.model.domain.IamSysUser;
import com.tongtech.tfw.backend.common.models.supers.SuperDao;
import org.springframework.stereotype.Service;
import java.util.List;
@Service("SysUserDao")
public interface SysUserDao extends SuperDao<SysUser> {
/**
* 准入管理修改获取审批人
* @param orgId
* @return
*/
List<SysUser> selectUserIdsByOrgId(String orgId);
}
package com.testor.module.iam.service;
import com.testor.biz.sys.user.model.domain.SysUser;
import com.testor.module.iam.model.domain.IamUserMapping;
import com.tongtech.tfw.backend.common.models.supers.SuperService;
import java.util.List;
public interface SysUserService extends SuperService<SysUser> {
/**
* 准入管理修改获取审批人
* @param orgId
* @return
*/
List<SysUser> selectUserIdsByOrgId(String orgId);
}
package com.testor.module.iam.service.impl;
import com.testor.biz.sys.user.model.domain.SysUser;
import com.testor.module.iam.dao.IamSysUserDao;
import com.testor.module.iam.dao.SysUserDao;
import com.testor.module.iam.model.domain.IamSysUser;
import com.testor.module.iam.service.IamSysUserService;
import com.testor.module.iam.service.SysUserService;
import com.tongtech.tfw.backend.common.models.supers.SuperServiceImpl;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
@Service("SysUserService")
public class SysUserServiceImpl extends SuperServiceImpl<SysUserDao, SysUser> implements SysUserService {
@Override
public List<SysUser> selectUserIdsByOrgId(String orgId) {
return baseMapper.selectUserIdsByOrgId(orgId);
}
}
...@@ -31,5 +31,6 @@ ...@@ -31,5 +31,6 @@
<id column="health_report" property="healthReport"/> <id column="health_report" property="healthReport"/>
<id column="employee_contract" property="employeeContract"/> <id column="employee_contract" property="employeeContract"/>
<id column="org_id" property="orgId"/> <id column="org_id" property="orgId"/>
<id column="contract_period" property="contractPeriod"/>
</resultMap> </resultMap>
</mapper> </mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.testor.module.hazard.dao.TContractorAccessLogApprovalDao">
<!-- 开启二级缓存 -->
<!-- <cache type="org.mybatis.caches.ehcache.LoggingEhcache"/> -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.testor.module.hazard.model.domain.TContractorAccessLogApproval">
<id column="id" property="id"/>
<result column="access_log_id" property="accessLogId"/>
<result column="name" property="name"/>
<result column="approval_content" property="approvalContent"/>
<result column="approval_status" property="approvalStatus"/>
<result column="status" property="status"/>
<result column="remarks" property="remarks"/>
<result column="contractor_allow_id" property="contractorAllowId"/>
<!-- 继承父类的字段 -->
<result column="create_by" property="createBy"/>
<result column="create_date" property="createDate"/>
<result column="update_by" property="updateBy"/>
<result column="update_date" property="updateDate"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, access_log_id, name, approval_content, approval_status, status, remarks,
create_by, create_date, update_by, update_date, del_flag, remark
</sql>
<select id="selectByContractorAllowIdAndCreateBy" resultMap="BaseResultMap">
select * from t_contractor_access_log_approval
where approval_status = '2' and contractor_allow_id =#{contractorAllowId} and create_by = #{createBy}
</select>
<update id="updateApprovalStatus">
update t_contractor_access_log_approval
set approval_status = #{approvalStatus},
approval_time = now()
where id in
<foreach collection="ids" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</update>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.testor.module.hazard.dao.TContractorAccessLogDao">
<!-- 开启二级缓存 -->
<!-- <cache type="org.mybatis.caches.ehcache.LoggingEhcache"/> -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.testor.module.hazard.model.domain.TContractorAccessLog">
<id column="id" property="id"/>
<result column="contractor_allow_id" property="contractorAllowId"/>
<result column="person_name" property="personName"/>
<result column="gender" property="gender"/>
<result column="id_card_no" property="idCardNo"/>
<result column="age" property="age"/>
<result column="job_nature_id" property="jobNatureId"/>
<result column="job_nature" property="jobNature"/>
<result column="job_title_id" property="jobTitleId"/>
<result column="job_title" property="jobTitle"/>
<result column="tel" property="tel"/>
<result column="status" property="status"/>
<result column="org_id" property="orgId"/>
<result column="tools_name" property="toolsName"/>
<result column="tools_type_id" property="toolsTypeId"/>
<result column="tools_type" property="toolsType"/>
<result column="tools_model" property="toolsModel"/>
<result column="tools_num" property="toolsNum"/>
<result column="tools_purpose" property="toolsPurpose"/>
<result column="tools_is_pass" property="toolsIsPass"/>
<result column="material_name" property="materialName"/>
<result column="material_type_id" property="materialTypeId"/>
<result column="material_type" property="materialType"/>
<result column="risk_id" property="riskId"/>
<result column="risk" property="risk"/>
<result column="material_model" property="materialModel"/>
<result column="material_num" property="materialNum"/>
<result column="material_purpose" property="materialPurpose"/>
<result column="equipment_name" property="equipmentName"/>
<result column="type_id" property="typeId"/>
<result column="equipment_type" property="equipmentType"/>
<result column="is_general" property="isGeneral"/>
<result column="equipment_model" property="equipmentModel"/>
<result column="equipment_num" property="equipmentNum"/>
<result column="equipment_purpose" property="equipmentPurpose"/>
<result column="batch" property="batch"/>
<result column="remarks" property="remarks"/>
<result column="type" property="type"/>
<result column="historical_content" property="historicalContent"/>
<!-- 继承父类的字段 -->
<result column="create_by" property="createBy"/>
<result column="create_date" property="createDate"/>
<result column="update_by" property="updateBy"/>
<result column="update_date" property="updateDate"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, contractor_allow_id, person_name, gender, id_card_no, age, job_nature_id, job_nature,
job_title_id, job_title, tel, status, org_id, tools_name, tools_type_id, tools_type,
tools_model, tools_num, tools_purpose, tools_is_pass, material_name, material_type_id,
material_type, risk_id, risk, material_model, material_num, material_purpose,
equipment_name, type_id, equipment_type, is_general, equipment_model, equipment_num,
equipment_purpose, batch, remarks, create_by, create_date, update_by, update_date,
del_flag, remark
</sql>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.testor.module.iam.dao.SysUserDao">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.testor.biz.sys.user.model.domain.SysUser">
<id column="user_id" property="userId"/>
<result column="org_id" property="orgId"/>
<result column="login_name" property="loginName"/>
<result column="login_pwd" property="loginPwd"/>
<result column="user_name" property="userName"/>
<result column="user_type" property="userType"/>
<result column="photo_url" property="photoUrl"/>
<result column="login_ip" property="loginIp"/>
<result column="login_date" property="loginDate"/>
<result column="pwd_security_level" property="pwdSecurityLevel"/>
<result column="sex" property="sex"/>
<result column="age" property="age"/>
<result column="address" property="address"/>
<result column="zip_code" property="zipCode"/>
<result column="phone_no" property="phoneNo"/>
<result column="fax" property="fax"/>
<result column="email" property="email"/>
<result column="user_key_pid" property="userKeyPid"/>
<result column="dept_id" property="deptId"/>
<result column="post_id" property="postId"/>
<result column="deputy_post_id" property="deputyPostId"/>
<result column="org_name" property="orgName"/>
<result column="post_name" property="postName"/>
<!-- 继承父类的字段 -->
<result column="create_by" property="createBy"/>
<result column="create_date" property="createDate"/>
<result column="update_by" property="updateBy"/>
<result column="update_date" property="updateDate"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
user_id, org_id, login_name, login_pwd, user_name, user_type, photo_url,
login_ip, login_date, pwd_security_level, sex, age, address, zip_code,
phone_no, fax, email, user_key_pid, dept_id, post_id, deputy_post_id,
org_name, post_name, create_by, create_date, update_by, update_date,
del_flag, remark
</sql>
<select id="selectUserIdsByOrgId" resultMap="BaseResultMap">
select * from t_sys_user
where user_id in(
select user_id from t_sys_user_role
where role_id in(
select role_id from t_sys_role
where role_name in(
'安全管理部门','作业所在部门','用户管理员','系统管理员'
)
)
and
user_id in(
select user_id from t_sys_user
where org_id in(
select org_id from t_sys_org
where status !=1 and is_dept = '0' and parent_ids like concat('%',#{orgId},'%') or org_id = #{orgId}
)
)
)
</select>
</mapper>
...@@ -42,6 +42,9 @@ ...@@ -42,6 +42,9 @@
<if test="param.regimeDataType!=null and param.regimeDataType!=''"> <if test="param.regimeDataType!=null and param.regimeDataType!=''">
AND a.regime_data_type = #{param.regimeDataType} AND a.regime_data_type = #{param.regimeDataType}
</if> </if>
<if test="param.releaseUnit!=null and param.releaseUnit!=''">
AND a.release_unit = #{param.releaseUnit}
</if>
<if test="param.oneMaterialsType!=null and param.oneMaterialsType!='' and param.senMaterialsType!=null and param.senMaterialsType!=''"> <if test="param.oneMaterialsType!=null and param.oneMaterialsType!='' and param.senMaterialsType!=null and param.senMaterialsType!=''">
AND a.one_materials_type = #{param.oneMaterialsType} AND a.sen_materials_type = #{param.senMaterialsType} AND a.one_materials_type = #{param.oneMaterialsType} AND a.sen_materials_type = #{param.senMaterialsType}
</if> </if>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment