This commit is contained in:
parent
4a74e5ea40
commit
ca2911e2c5
|
|
@ -0,0 +1,2 @@
|
|||
hrsa_tax_declare_api_profile
|
||||
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar(10),
|
||||
api_profile int
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key);
|
||||
/
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar(10),
|
||||
tax_agent_id number not null,
|
||||
tax_declare_record_id number,
|
||||
tax_year_month date not null,
|
||||
request_id varchar(50) not null,
|
||||
request_type int not null
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
host varchar2(255),
|
||||
app_key varchar2(255),
|
||||
app_secret varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key);
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify host not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_key not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_secret not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time date;
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_code varchar2(50) not null,
|
||||
tax_registration_number varchar2(50) not null,
|
||||
department_code varchar2(50),
|
||||
department_name varchar2(50),
|
||||
nation varchar2(50),
|
||||
province varchar2(50),
|
||||
city varchar2(50),
|
||||
area_code varchar2(50) not null,
|
||||
password_type int not null,
|
||||
real_account varchar2(50) ,
|
||||
pwd varchar2(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key);
|
||||
/
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
api_profile int
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key);
|
||||
/
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_declare_record_id number,
|
||||
tax_year_month date not null,
|
||||
request_id varchar2(50) not null,
|
||||
request_type int not null
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
host varchar2(255),
|
||||
app_key varchar2(255),
|
||||
app_secret varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key);
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify host not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_key not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_secret not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time date;
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_code varchar2(50) not null,
|
||||
tax_registration_number varchar2(50) not null,
|
||||
department_code varchar2(50),
|
||||
department_name varchar2(50),
|
||||
nation varchar2(50),
|
||||
province varchar2(50),
|
||||
city varchar2(50),
|
||||
area_code varchar2(50) not null,
|
||||
password_type int not null,
|
||||
real_account varchar2(50) ,
|
||||
pwd varchar2(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key);
|
||||
/
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
api_profile int
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key);
|
||||
/
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_declare_record_id number,
|
||||
tax_year_month date not null,
|
||||
request_id varchar2(50) not null,
|
||||
request_type int not null
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
host varchar2(255),
|
||||
app_key varchar2(255),
|
||||
app_secret varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key);
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify host not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_key not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_secret not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time date;
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_code varchar2(50) not null,
|
||||
tax_registration_number varchar2(50) not null,
|
||||
department_code varchar2(50),
|
||||
department_name varchar2(50),
|
||||
nation varchar2(50),
|
||||
province varchar2(50),
|
||||
city varchar2(50),
|
||||
area_code varchar2(50) not null,
|
||||
password_type int not null,
|
||||
real_account varchar2(50) ,
|
||||
pwd varchar2(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key);
|
||||
/
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
alter table hrsa_tax_agent add tax_cycle_type int
|
||||
;
|
||||
|
||||
alter table hrsa_tax_agent modify column tax_cycle_type int default 3
|
||||
;
|
||||
|
||||
update hrsa_tax_agent set tax_cycle_type = 3 where tax_cycle_type is null
|
||||
;
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id bigint primary key comment 'ID' ,
|
||||
create_time datetime comment '创建时间' ,
|
||||
update_time datetime comment '修改时间' ,
|
||||
creator bigint comment '创建人id' ,
|
||||
delete_type int default 0 comment '是否删除' ,
|
||||
tenant_key varchar(10) comment '租户KEY' ,
|
||||
api_profile int comment '接口环境'
|
||||
)
|
||||
;
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key)
|
||||
;
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id bigint primary key comment 'ID' ,
|
||||
create_time datetime comment '创建时间' ,
|
||||
update_time datetime comment '修改时间' ,
|
||||
creator bigint comment '创建人id' ,
|
||||
delete_type int default 0 comment '是否删除' ,
|
||||
tenant_key varchar(10) comment '租户KEY' ,
|
||||
tax_agent_id bigint not null comment '个税扣缴义务人ID' ,
|
||||
tax_declare_record_id bigint comment '个税申报记录' ,
|
||||
tax_year_month date not null comment '税款所属期' ,
|
||||
request_id varchar(50) not null comment '请求id' ,
|
||||
request_type int not null comment '请求类型'
|
||||
)
|
||||
;
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key)
|
||||
;
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id bigint primary key comment 'ID' ,
|
||||
create_time datetime comment '创建时间' ,
|
||||
update_time datetime comment '修改时间' ,
|
||||
creator bigint comment '创建人id' ,
|
||||
delete_type int default 0 comment '是否删除' ,
|
||||
tenant_key varchar(10) comment '租户KEY' ,
|
||||
host varchar(255) comment '接口host' ,
|
||||
app_key varchar(255) comment 'appKey' ,
|
||||
app_secret varchar(255) comment 'appSecret'
|
||||
)
|
||||
;
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key)
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify host varchar(255) not null
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_key varchar(255) not null
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_secret varchar(255) not null
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality bigint
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain bigint
|
||||
;
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time datetime
|
||||
;
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id bigint primary key comment 'ID' ,
|
||||
create_time datetime comment '创建时间' ,
|
||||
update_time datetime comment '修改时间' ,
|
||||
creator bigint comment '创建人id' ,
|
||||
delete_type int default 0 comment '是否删除' ,
|
||||
tenant_key varchar(10) comment '租户KEY' ,
|
||||
tax_agent_id bigint not null comment '个税扣缴义务人ID' ,
|
||||
tax_code varchar(50) not null comment '税号' ,
|
||||
tax_registration_number varchar(50) not null comment '登记序号' ,
|
||||
department_code varchar(50) comment '部门编号' ,
|
||||
department_name varchar(50) comment '部门名称' ,
|
||||
nation varchar(50) comment '国家' ,
|
||||
province varchar(50) comment '省份' ,
|
||||
city varchar(50) comment '市级' ,
|
||||
area_code varchar(50) not null comment '行政编码' ,
|
||||
password_type int(2) not null comment '密码校验类型' ,
|
||||
real_account varchar(50) comment '实名账号' ,
|
||||
pwd varchar(50) not null comment '密码' ,
|
||||
check_status int(2) not null comment '报税验证状态' ,
|
||||
fail_reason varchar(255) comment '最近一次验证失败原因'
|
||||
)
|
||||
;
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key)
|
||||
;
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id)
|
||||
;
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
api_profile int
|
||||
)
|
||||
/
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key)
|
||||
/
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_declare_record_id number,
|
||||
tax_year_month date not null,
|
||||
request_id varchar2(50) not null,
|
||||
request_type int not null
|
||||
)
|
||||
/
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key)
|
||||
/
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
host varchar2(255),
|
||||
app_key varchar2(255),
|
||||
app_secret varchar2(255)
|
||||
)
|
||||
/
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key)
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify host not null
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_key not null
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_secret not null
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality number
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain number
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time date
|
||||
/
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_code varchar2(50) not null,
|
||||
tax_registration_number varchar2(50) not null,
|
||||
department_code varchar2(50),
|
||||
department_name varchar2(50),
|
||||
nation varchar2(50),
|
||||
province varchar2(50),
|
||||
city varchar2(50),
|
||||
area_code varchar2(50) not null,
|
||||
password_type int not null,
|
||||
real_account varchar2(50) ,
|
||||
pwd varchar2(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason varchar2(255)
|
||||
)
|
||||
/
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key)
|
||||
/
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id)
|
||||
/
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time timestamp,
|
||||
update_time timestamp,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar(10),
|
||||
api_profile int
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key);
|
||||
/
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time timestamp,
|
||||
update_time timestamp,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar(10),
|
||||
tax_agent_id bigint not null,
|
||||
tax_declare_record_id bigint,
|
||||
tax_year_month date not null,
|
||||
request_id varchar(50) not null,
|
||||
request_type int not null
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key);
|
||||
/
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time timestamp,
|
||||
update_time timestamp,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar(10),
|
||||
host varchar(255),
|
||||
app_key varchar(255),
|
||||
app_secret varchar(255)
|
||||
);
|
||||
/
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key);
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config alter column host set not null ;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config alter column app_key set not null ;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config alter column app_secret set not null ;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality bigint;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain bigint;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time timestamp;
|
||||
/
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time timestamp,
|
||||
update_time timestamp,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar(10),
|
||||
tax_agent_id bigint not null,
|
||||
tax_code varchar(50) not null,
|
||||
tax_registration_number varchar(50) not null,
|
||||
department_code varchar(50),
|
||||
department_name varchar(50),
|
||||
nation varchar(50),
|
||||
province varchar(50),
|
||||
city varchar(50),
|
||||
area_code varchar(50) not null,
|
||||
password_type int not null,
|
||||
real_account varchar(50),
|
||||
pwd varchar(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason varchar(255)
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key);
|
||||
/
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id);
|
||||
/
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time datetime,
|
||||
update_time datetime,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key nvarchar(10),
|
||||
api_profile int
|
||||
)
|
||||
GO
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key)
|
||||
GO
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time datetime,
|
||||
update_time datetime,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key nvarchar(10),
|
||||
tax_agent_id bigint not null,
|
||||
tax_declare_record_id bigint,
|
||||
tax_year_month datetime not null,
|
||||
request_id nvarchar(50) not null,
|
||||
request_type int not null
|
||||
)
|
||||
GO
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key)
|
||||
GO
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time datetime,
|
||||
update_time datetime,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key nvarchar(10),
|
||||
host nvarchar(255),
|
||||
app_key nvarchar(255),
|
||||
app_secret nvarchar(255)
|
||||
)
|
||||
GO
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key)
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config alter column host nvarchar(255) not null
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config alter column app_key nvarchar(255) not null
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config alter column app_secret nvarchar(255) not null
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality bigint
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain bigint
|
||||
GO
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time datetime
|
||||
GO
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id bigint primary key ,
|
||||
create_time datetime,
|
||||
update_time datetime,
|
||||
creator bigint,
|
||||
delete_type int default 0,
|
||||
tenant_key nvarchar(10),
|
||||
tax_agent_id bigint not null,
|
||||
tax_code nvarchar(50) not null,
|
||||
tax_registration_number nvarchar(50) not null,
|
||||
department_code nvarchar(50),
|
||||
department_name nvarchar(50),
|
||||
nation nvarchar(50),
|
||||
province nvarchar(50),
|
||||
city nvarchar(50),
|
||||
area_code nvarchar(50) not null,
|
||||
password_type int not null,
|
||||
real_account nvarchar(50) ,
|
||||
pwd nvarchar(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason nvarchar(255)
|
||||
)
|
||||
GO
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key)
|
||||
GO
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id)
|
||||
GO
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
create table hrsa_tax_declare_api_profile
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
api_profile int
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_22b215db on hrsa_tax_declare_api_profile(tenant_key);
|
||||
/
|
||||
|
||||
create table hrsa_tax_payment_request
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_declare_record_id number,
|
||||
tax_year_month date not null,
|
||||
request_id varchar2(50) not null,
|
||||
request_type int not null
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_bcb610c7 on hrsa_tax_payment_request(tenant_key);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
create table hrsa_tax_declare_api_config
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
host varchar2(255),
|
||||
app_key varchar2(255),
|
||||
app_secret varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create unique index idx_tenant_key_api_a6f21b46 on hrsa_tax_declare_api_config(tenant_key);
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify host not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_key not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config modify app_secret not null;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add enable_use int;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add totality number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add remain number;
|
||||
/
|
||||
|
||||
alter table hrsa_tax_declare_api_config add last_update_time date;
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
create table hrsa_tax_agent_tax_return
|
||||
(
|
||||
id number primary key ,
|
||||
create_time date,
|
||||
update_time date,
|
||||
creator number,
|
||||
delete_type int default 0,
|
||||
tenant_key varchar2(10),
|
||||
tax_agent_id number not null,
|
||||
tax_code varchar2(50) not null,
|
||||
tax_registration_number varchar2(50) not null,
|
||||
department_code varchar2(50),
|
||||
department_name varchar2(50),
|
||||
nation varchar2(50),
|
||||
province varchar2(50),
|
||||
city varchar2(50),
|
||||
area_code varchar2(50) not null,
|
||||
password_type int not null,
|
||||
real_account varchar2(50) ,
|
||||
pwd varchar2(50) not null,
|
||||
check_status int not null,
|
||||
fail_reason varchar2(255)
|
||||
);
|
||||
/
|
||||
|
||||
create index id_tenant_key_tax_return on hrsa_tax_agent_tax_return(tenant_key);
|
||||
/
|
||||
|
||||
create unique index id_tax_agent_id_tax_return on hrsa_tax_agent_tax_return(tax_agent_id);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
package com.api.salary.web;
|
||||
|
||||
import javax.ws.rs.Path;
|
||||
|
||||
@Path("/bs/hrmsalary/taxAgent/taxReturn")
|
||||
public class TaxAgentTaxReturnController extends com.engine.salary.web.TaxAgentTaxReturnController{
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
package com.engine.salary.common;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 人员选项
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-09-06 16:57:23
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ApiModel("人员选项")
|
||||
public class OptionDTO {
|
||||
|
||||
@ApiModelProperty("人员ID")
|
||||
private String id;
|
||||
|
||||
@ApiModelProperty("人员姓名")
|
||||
private String content;
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package com.engine.salary.common.taxdeclare;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 异步接口中的requestId
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/10/25 4:50 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class AsyncRequestIdDTO {
|
||||
|
||||
@ApiModelProperty("异步接口中的requestId")
|
||||
private String requestId;
|
||||
}
|
||||
|
|
@ -0,0 +1,140 @@
|
|||
package com.engine.salary.entity.datacollection.response;
|
||||
|
||||
import com.engine.salary.entity.taxpayment.response.BaseResponse;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 人员专项附加扣除信息查询结果
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-10-27 10:00 AM
|
||||
**/
|
||||
@Data
|
||||
public class QuerySpecialAmountFeedbackResponse extends BaseResponse {
|
||||
|
||||
/**
|
||||
* 返回数据
|
||||
*/
|
||||
private Body body;
|
||||
|
||||
|
||||
/**
|
||||
* 人员专项附加扣除信息查询反馈结果body
|
||||
*/
|
||||
@Data
|
||||
public static class Body {
|
||||
/**
|
||||
* 结果列表
|
||||
*/
|
||||
private List<Feedback> ryxxlb;
|
||||
}
|
||||
|
||||
/**
|
||||
* 人员专项附加扣除信息查询反馈结果
|
||||
**/
|
||||
@Data
|
||||
public static class Feedback {
|
||||
/**
|
||||
* 员工姓名
|
||||
*/
|
||||
private String xm;
|
||||
|
||||
/**
|
||||
* 证件类型
|
||||
*/
|
||||
private String zzlx;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
private String zzhm;
|
||||
|
||||
/**
|
||||
* 代报状态
|
||||
*/
|
||||
private String sbzt;
|
||||
|
||||
/**
|
||||
* 失败原因
|
||||
*/
|
||||
private String sbyy;
|
||||
|
||||
/**
|
||||
* 累计子女教育支出
|
||||
*/
|
||||
private BigDecimal ljznjyzc;
|
||||
|
||||
/**
|
||||
* 累计租房租金支出
|
||||
*/
|
||||
private BigDecimal ljzfzjzc;
|
||||
|
||||
/**
|
||||
* 累计住房贷款利息支出
|
||||
*/
|
||||
private BigDecimal ljzfdklxzc;
|
||||
|
||||
/**
|
||||
* 累计赡养老人支出
|
||||
*/
|
||||
private BigDecimal ljsylrzc;
|
||||
|
||||
/**
|
||||
* 累计继续教育支出
|
||||
*/
|
||||
private BigDecimal ljjxjyzc;
|
||||
|
||||
/**
|
||||
* 累计非学历继续教育支出
|
||||
*/
|
||||
private BigDecimal ljfxljxjyzc;
|
||||
|
||||
/**
|
||||
* 累计学历继续教育支出
|
||||
*/
|
||||
private BigDecimal ljxljxjyzc;
|
||||
|
||||
/**
|
||||
* 累计3岁以下婴幼儿照护支出
|
||||
*/
|
||||
private BigDecimal ljyyezhzc;
|
||||
|
||||
/**
|
||||
* 子女教育支出
|
||||
*/
|
||||
private BigDecimal znjyzc;
|
||||
|
||||
/**
|
||||
* 赡养老人支出
|
||||
*/
|
||||
private BigDecimal sylrzc;
|
||||
|
||||
/**
|
||||
* 住房贷款利息支出
|
||||
*/
|
||||
private BigDecimal zfdklxzc;
|
||||
|
||||
/**
|
||||
* 住房租金支出
|
||||
*/
|
||||
private BigDecimal zfzjzc;
|
||||
|
||||
/**
|
||||
* 继续教育支出
|
||||
*/
|
||||
private BigDecimal jxjyzc;
|
||||
|
||||
/**
|
||||
* 非学历继续教育支出
|
||||
*/
|
||||
private BigDecimal fxljxjyzc;
|
||||
|
||||
/**
|
||||
* 3岁以下婴幼儿照护支出
|
||||
*/
|
||||
private BigDecimal yyezhzc;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
package com.engine.salary.entity.datacollection.response;
|
||||
|
||||
import com.engine.salary.entity.taxpayment.response.BaseResponse;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 人员专项附加扣除信息查询结果
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-10-27 10:00 AM
|
||||
**/
|
||||
@Data
|
||||
public class QuerySpecialAmountResponse extends BaseResponse {
|
||||
|
||||
/**
|
||||
* 返回数据
|
||||
*/
|
||||
private QuerySpecialAmountBody body;
|
||||
|
||||
/**
|
||||
* 人员专项附加扣除信息查询结果body
|
||||
**/
|
||||
@Data
|
||||
public static class QuerySpecialAmountBody {
|
||||
/**
|
||||
* 请求查询ID
|
||||
*/
|
||||
private String requestId;
|
||||
/**
|
||||
* 个税扣缴义务人id
|
||||
*/
|
||||
private Long taxAgentId;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
package com.engine.salary.entity.taxagent.bo;
|
||||
|
||||
import com.engine.salary.entity.taxagent.dto.TaxAgentTaxReturnMainFormDTO;
|
||||
import com.engine.salary.entity.taxagent.param.TaxAgentTaxReturnSaveParam;
|
||||
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
|
||||
import com.engine.salary.entity.taxagent.po.TaxAgentTaxReturnPO;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationApiConfigPO;
|
||||
import com.engine.salary.enums.sicategory.DeleteTypeEnum;
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnPasswordTypeEnum;
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
import com.engine.salary.util.Sm4Utils;
|
||||
import dm.jdbc.util.IdGenerator;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* 报税信息BO
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-09-02 11:06:41
|
||||
*/
|
||||
public class TaxAgentTaxReturnBO {
|
||||
|
||||
public static TaxAgentTaxReturnMainFormDTO convertPo2FormDto(TaxAgentTaxReturnPO taxReturnPO) {
|
||||
return new TaxAgentTaxReturnMainFormDTO()
|
||||
.setId(taxReturnPO.getId())
|
||||
.setPasswordType(TaxAgentTaxReturnPasswordTypeEnum.parseByValue(taxReturnPO.getPasswordType()))
|
||||
.setCity(taxReturnPO.getCity())
|
||||
.setProvince(taxReturnPO.getProvince())
|
||||
.setNation(taxReturnPO.getNation())
|
||||
.setAreaCode(taxReturnPO.getAreaCode())
|
||||
.setTaxCode(taxReturnPO.getTaxCode())
|
||||
.setAccount(taxReturnPO.getRealAccount())
|
||||
.setNetPassword(TaxAgentTaxReturnPasswordTypeEnum.TAX_NET_PASSWORD.getValue().equals(taxReturnPO.getPasswordType()) ? taxReturnPO.getPwd() : null)
|
||||
.setRealNamePassword(TaxAgentTaxReturnPasswordTypeEnum.REAL_NAME_PASSWORD.getValue().equals(taxReturnPO.getPasswordType()) ? taxReturnPO.getPwd() : null)
|
||||
.setTaxRegistrationNumber(taxReturnPO.getTaxRegistrationNumber())
|
||||
.setDepartmentCode(taxReturnPO.getDepartmentCode())
|
||||
.setCheckStatus(TaxAgentTaxReturnStatusEnum.parseByValue(taxReturnPO.getCheckStatus()))
|
||||
.setFailReason(taxReturnPO.getFailReason());
|
||||
}
|
||||
|
||||
public static TaxAgentTaxReturnPO convertParam2Po4Insert(TaxDeclarationApiConfigPO apiConfig, TaxAgentTaxReturnSaveParam saveParam) throws Exception {
|
||||
return TaxAgentTaxReturnPO.builder()
|
||||
.taxAgentId(saveParam.getTaxAgentId())
|
||||
.taxCode(saveParam.getTaxCode())
|
||||
.nation(saveParam.getNation())
|
||||
.city(saveParam.getCity())
|
||||
.province(saveParam.getProvince())
|
||||
.areaCode(saveParam.getAreaCode())
|
||||
.realAccount(saveParam.getAccount())
|
||||
.passwordType(TaxAgentTaxReturnPasswordTypeEnum.valueOf(saveParam.getPasswordType()).getValue())
|
||||
.pwd(Sm4Utils.encryptEcb(apiConfig.getAppSecret(), saveParam.getPassword()))
|
||||
.failReason("")
|
||||
.id(IdGenerator.generate())
|
||||
.checkStatus(TaxAgentTaxReturnStatusEnum.NOT_COMMIT.getValue())
|
||||
.deleteType(DeleteTypeEnum.NOT_DELETED.getValue())
|
||||
.createTime(LocalDateTime.now())
|
||||
.updateTime(LocalDateTime.now())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static void convertParam2Po4Update(TaxDeclarationApiConfigPO apiConfig, TaxAgentTaxReturnPO po, TaxAgentTaxReturnSaveParam saveParam) throws Exception {
|
||||
po.setTaxCode(saveParam.getTaxCode())
|
||||
.setNation(saveParam.getNation())
|
||||
.setCity(saveParam.getCity())
|
||||
.setProvince(saveParam.getProvince())
|
||||
.setAreaCode(saveParam.getAreaCode())
|
||||
.setRealAccount(saveParam.getAccount())
|
||||
.setPwd(Sm4Utils.encryptEcb(apiConfig.getAppSecret(), saveParam.getPassword()))
|
||||
.setPasswordType(TaxAgentTaxReturnPasswordTypeEnum.valueOf(saveParam.getPasswordType()).getValue())
|
||||
.setTaxAgentId(saveParam.getTaxAgentId())
|
||||
.setUpdateTime(LocalDateTime.now());
|
||||
}
|
||||
|
||||
public static Map<String, Object> convert2RequestMap(TaxAgentPO taxAgent, TaxAgentTaxReturnPO taxAgentTaxReturn) {
|
||||
Map<String, Object> requestMap = new HashMap<>();
|
||||
requestMap.put("bizNo", UUID.randomUUID().toString().replace("-", ""));
|
||||
requestMap.put("qymc", taxAgent.getName());
|
||||
requestMap.put("mmlx", taxAgentTaxReturn.getPasswordType());
|
||||
requestMap.put("smzh", taxAgentTaxReturn.getRealAccount());
|
||||
requestMap.put("smmm", taxAgentTaxReturn.getPwd());
|
||||
requestMap.put("jmsmmm", "1");
|
||||
requestMap.put("sbmm", taxAgentTaxReturn.getPwd());
|
||||
requestMap.put("jmsbmm", "1");
|
||||
requestMap.put("djxhid", taxAgentTaxReturn.getTaxRegistrationNumber());
|
||||
requestMap.put("nsrsbh", taxAgentTaxReturn.getTaxCode());
|
||||
requestMap.put("areaid", taxAgentTaxReturn.getAreaCode());
|
||||
requestMap.put("bmbh", "");
|
||||
requestMap.put("bmmc", "");
|
||||
return requestMap;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
package com.engine.salary.entity.taxagent.dto;
|
||||
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 税友验证成功信息
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-08-31 15:25:44
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("税友验证成功信息")
|
||||
public class TaxAgentTaxReturnCheckDTO {
|
||||
/**
|
||||
* 验证状态
|
||||
* @see TaxAgentTaxReturnStatusEnum
|
||||
*/
|
||||
@ApiModelProperty("验证状态")
|
||||
private Integer status;
|
||||
|
||||
@ApiModelProperty("登记序号")
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
@ApiModelProperty("部门编号")
|
||||
private String departmentCode;
|
||||
|
||||
@ApiModelProperty("验证提示信息")
|
||||
private String message;
|
||||
|
||||
@ApiModelProperty("详细数据")
|
||||
private List<TaxAgentTaxReturnCheckFormDTO> records;
|
||||
|
||||
public void setMessage(String message, String currentTenantKey, Long currentEmployeeId) {
|
||||
this.message = message;
|
||||
if (TaxAgentTaxReturnStatusEnum.SUCCESS.getValue().equals(status) || TaxAgentTaxReturnStatusEnum.NOT_COMMIT.getValue().equals(status)) {
|
||||
this.message = SalaryI18nUtil.getI18nLabel( 153350, "验证成功,报税主体信息已与税局系统进行认证确认");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
package com.engine.salary.entity.taxagent.dto;
|
||||
|
||||
import com.engine.salary.enums.SalaryOnOffEnum;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
|
||||
/**
|
||||
* 税友验证信息表单
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-08-31 15:25:44
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
@ApiModel("税友验证信息")
|
||||
public class TaxAgentTaxReturnCheckFormDTO {
|
||||
|
||||
@ApiModelProperty("税号")
|
||||
private String taxCode;
|
||||
|
||||
@ApiModelProperty("验证信息id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long index;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long taxAgentId;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人")
|
||||
private String taxAgentName;
|
||||
|
||||
@ApiModelProperty("登记序号")
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
@ApiModelProperty("纳税人状态")
|
||||
private String taxpayerStatus;
|
||||
|
||||
@ApiModelProperty("法人姓名")
|
||||
private String legalPersonName;
|
||||
|
||||
@ApiModelProperty("联系电话")
|
||||
private String mobile;
|
||||
|
||||
@ApiModelProperty("生产经营地址")
|
||||
private String businessAddress;
|
||||
|
||||
@ApiModelProperty("行业名称")
|
||||
private String industryName;
|
||||
|
||||
@ApiModelProperty("主管税务机关")
|
||||
private String taxAuthorities;
|
||||
|
||||
@ApiModelProperty("主管税务科所")
|
||||
private String taxBranch;
|
||||
|
||||
|
||||
@ApiModelProperty("是否分部门备案")
|
||||
private SalaryOnOffEnum divideFiling;
|
||||
|
||||
@ApiModelProperty("部门名称")
|
||||
private String departmentName;
|
||||
|
||||
@ApiModelProperty("部门编码")
|
||||
private String departmentCode;
|
||||
}
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
package com.engine.salary.entity.taxagent.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 税友报税信息列表
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-09-02 15:31:10
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//税友报税信息列表
|
||||
public class TaxAgentTaxReturnListDTO {
|
||||
|
||||
//序号
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long index;
|
||||
|
||||
//税号
|
||||
private String taxCode;
|
||||
|
||||
//个税扣缴义务人
|
||||
private String taxAgentName;
|
||||
|
||||
//登记序号
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
//纳税人状态
|
||||
private String taxpayerStatus;
|
||||
|
||||
//主管税务机关
|
||||
private String taxAuthorities;
|
||||
|
||||
//主管税务科所
|
||||
private String taxBranch;
|
||||
|
||||
//生产经营地址
|
||||
private String businessAddress;
|
||||
|
||||
//行业名称
|
||||
private String industryName;
|
||||
|
||||
//法人姓名
|
||||
private String legalPersonName;
|
||||
|
||||
//联系电话
|
||||
private String mobile;
|
||||
}
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
package com.engine.salary.entity.taxagent.dto;
|
||||
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnPasswordTypeEnum;
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 报税信息表单
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-09-02 09:39:05
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("报税信息表单")
|
||||
public class TaxAgentTaxReturnMainFormDTO {
|
||||
|
||||
@ApiModelProperty("主键id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("名称")
|
||||
private String name;
|
||||
|
||||
@ApiModelProperty("税号")
|
||||
private String taxCode;
|
||||
|
||||
@ApiModelProperty("报税所属区域")
|
||||
private String city;
|
||||
|
||||
@ApiModelProperty("省份")
|
||||
private String province;
|
||||
|
||||
@ApiModelProperty("国家")
|
||||
private String nation;
|
||||
|
||||
@ApiModelProperty("行政区划代码")
|
||||
private String areaCode;
|
||||
|
||||
@ApiModelProperty("密码校验类型")
|
||||
private TaxAgentTaxReturnPasswordTypeEnum passwordType;
|
||||
|
||||
@ApiModelProperty("个税网报密码")
|
||||
private String netPassword;
|
||||
|
||||
@ApiModelProperty("实名账号")
|
||||
private String account;
|
||||
|
||||
@ApiModelProperty("实名账号密码")
|
||||
private String realNamePassword;
|
||||
|
||||
@ApiModelProperty("登记序号")
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
@ApiModelProperty("部门编码")
|
||||
private String departmentCode;
|
||||
|
||||
@ApiModelProperty("报税信息验证状态")
|
||||
private TaxAgentTaxReturnStatusEnum checkStatus;
|
||||
|
||||
@ApiModelProperty("失败原因")
|
||||
private String failReason;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
package com.engine.salary.entity.taxagent.dto;
|
||||
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
|
||||
/**
|
||||
* 税友验证成功信息
|
||||
*
|
||||
* @author chengliming
|
||||
* @date: 2022-08-31 15:25:44
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@Builder
|
||||
//税友验证成功信息")
|
||||
public class TaxAgentTaxReturnResultDTO {
|
||||
|
||||
//展示类型:1、展示表单 2、展示列表 3、关闭所有tab")
|
||||
private Integer compType;
|
||||
|
||||
//验证状态")
|
||||
private TaxAgentTaxReturnStatusEnum checkStatus;
|
||||
|
||||
//失败原因")
|
||||
private String failReason;
|
||||
|
||||
//验证提示信息")
|
||||
private String message;
|
||||
|
||||
//个税扣缴义务人ID")
|
||||
private String taxAgentId;
|
||||
|
||||
//登记序号")
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
//部门编号")
|
||||
private String departmentCode;
|
||||
|
||||
//表单")
|
||||
private TaxAgentTaxReturnListDTO form;
|
||||
|
||||
//列表")
|
||||
private PageInfo<TaxAgentTaxReturnListDTO> table;
|
||||
}
|
||||
|
|
@ -0,0 +1,93 @@
|
|||
package com.engine.salary.entity.taxagent.param;
|
||||
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnPasswordTypeEnum;
|
||||
import com.engine.salary.util.SalaryAssert;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @author chengliming
|
||||
* @desc: 个税扣缴义务人-报税信息-保存参数
|
||||
* @date: 2022-08-31 10:23:29
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("个税扣缴义务人-报税信息-保存参数")
|
||||
public class TaxAgentTaxReturnSaveParam {
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
private Long taxAgentId;
|
||||
|
||||
@ApiModelProperty("税号")
|
||||
private String taxCode;
|
||||
|
||||
@ApiModelProperty("登记序号")
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
@ApiModelProperty("省级")
|
||||
private String province;
|
||||
|
||||
@ApiModelProperty("市级")
|
||||
private String city;
|
||||
|
||||
@ApiModelProperty("国家")
|
||||
private String nation;
|
||||
|
||||
@ApiModelProperty("密码校验类型")
|
||||
private String passwordType;
|
||||
|
||||
@ApiModelProperty("密码")
|
||||
private String password;
|
||||
|
||||
@ApiModelProperty("实名账号")
|
||||
private String account;
|
||||
|
||||
@ApiModelProperty("部门编码,分部门备案时填入")
|
||||
private String departmentCode;
|
||||
|
||||
@ApiModelProperty("部门名称,分部门备案时填入")
|
||||
private String departmentName;
|
||||
|
||||
@ApiModelProperty("请求类型 1.保存并验证 2.仅保存")
|
||||
private Integer requestType = 1;
|
||||
|
||||
@ApiModelProperty("验证类型 1.请求税友验证报税信息 2.请求税友验证登记序号+税号 3.请求税友验证部门编码")
|
||||
@JsonIgnore
|
||||
private Integer type;
|
||||
|
||||
@ApiModelProperty("地区编码")
|
||||
private String areaCode;
|
||||
|
||||
public void checkParam() {
|
||||
String notEmpty = SalaryI18nUtil.getI18nLabel(100577, "不能为空");
|
||||
SalaryAssert.notNull(this.taxAgentId, SalaryI18nUtil.getI18nLabel(121717, "个税扣缴义务人id不能为空"));
|
||||
SalaryAssert.notBlank(this.taxCode, SalaryI18nUtil.getI18nLabel(144388, "税号") + notEmpty);
|
||||
SalaryAssert.notBlank(this.nation, SalaryI18nUtil.getI18nLabel(144408, "国家") + notEmpty);
|
||||
SalaryAssert.notBlank(this.province, SalaryI18nUtil.getI18nLabel(144407, "省份") + notEmpty);
|
||||
SalaryAssert.notBlank(this.city, SalaryI18nUtil.getI18nLabel(144388, "城市") + notEmpty);
|
||||
SalaryAssert.notNull(this.passwordType, SalaryI18nUtil.getI18nLabel(144390, "密码校验类型") + notEmpty);
|
||||
if (TaxAgentTaxReturnPasswordTypeEnum.TAX_NET_PASSWORD.toString().equals(this.passwordType)) {
|
||||
SalaryAssert.notBlank(this.password, SalaryI18nUtil.getI18nLabel(144391, "个税网报密码") + notEmpty);
|
||||
}
|
||||
if (TaxAgentTaxReturnPasswordTypeEnum.REAL_NAME_PASSWORD.toString().equals(this.passwordType)) {
|
||||
SalaryAssert.notBlank(this.password, SalaryI18nUtil.getI18nLabel(144392, "实名账号密码") + notEmpty);
|
||||
}
|
||||
}
|
||||
|
||||
public void checkParam4Registration() {
|
||||
String notEmpty = SalaryI18nUtil.getI18nLabel(100577, "不能为空");
|
||||
SalaryAssert.notNull(this.taxAgentId, SalaryI18nUtil.getI18nLabel(121717, "个税扣缴义务人id不能为空"));
|
||||
SalaryAssert.notBlank(this.taxCode, SalaryI18nUtil.getI18nLabel(144388, "税号") + notEmpty);
|
||||
SalaryAssert.notBlank(this.taxRegistrationNumber, SalaryI18nUtil.getI18nLabel(144400, "登记序号") + notEmpty);
|
||||
}
|
||||
|
||||
public void checkParam4Department() {
|
||||
SalaryAssert.notNull(this.taxAgentId, SalaryI18nUtil.getI18nLabel(121717, "个税扣缴义务人id不能为空"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
package com.engine.salary.entity.taxagent.po;
|
||||
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnPasswordTypeEnum;
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Collection;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人-报税信息
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@Accessors(chain = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_tax_agent_tax_return
|
||||
public class TaxAgentTaxReturnPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -5077833887846911337L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人ID
|
||||
*/
|
||||
private Long taxAgentId;
|
||||
|
||||
/**
|
||||
* 税号
|
||||
*/
|
||||
private String taxCode;
|
||||
|
||||
/**
|
||||
* 登记序号
|
||||
*/
|
||||
private String taxRegistrationNumber;
|
||||
|
||||
/**
|
||||
* 部门编号
|
||||
*/
|
||||
private String departmentCode;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
private String departmentName;
|
||||
|
||||
/**
|
||||
* 国家
|
||||
*/
|
||||
private String nation;
|
||||
|
||||
/**
|
||||
* 省份
|
||||
*/
|
||||
private String province;
|
||||
|
||||
/**
|
||||
* 省级行政编码
|
||||
*/
|
||||
private String provinceCode;
|
||||
|
||||
/**
|
||||
* 市级
|
||||
*/
|
||||
private String city;
|
||||
|
||||
/**
|
||||
* 市级
|
||||
*/
|
||||
private String cityCode;
|
||||
|
||||
/**
|
||||
* 行政区划代码
|
||||
*/
|
||||
private String areaCode;
|
||||
|
||||
/**
|
||||
* 密码校验类型
|
||||
*
|
||||
* @see TaxAgentTaxReturnPasswordTypeEnum
|
||||
*/
|
||||
private Integer passwordType;
|
||||
|
||||
/**
|
||||
* 实名账号
|
||||
*/
|
||||
private String realAccount;
|
||||
|
||||
/**
|
||||
* 密码
|
||||
*/
|
||||
private String pwd;
|
||||
|
||||
/**
|
||||
* 税友验证状态
|
||||
*
|
||||
* @see TaxAgentTaxReturnStatusEnum
|
||||
*/
|
||||
private Integer checkStatus;
|
||||
|
||||
/**
|
||||
* 最近一次验证失败原因
|
||||
*/
|
||||
private String failReason;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateTime;
|
||||
|
||||
|
||||
//查询条件
|
||||
private Collection<Long> taxAgentIds;
|
||||
private Collection<String> taxCodes;
|
||||
}
|
||||
|
|
@ -0,0 +1,146 @@
|
|||
//package com.engine.salary.entity.taxapiflow.bo;
|
||||
//
|
||||
//import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowRecordListDTO;
|
||||
//import com.engine.salary.entity.taxapiflow.po.TaxDeclarationApiFlowRecordPO;
|
||||
//import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationApiConfigPO;
|
||||
//import com.engine.salary.enums.sicategory.DeleteTypeEnum;
|
||||
//import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
//import com.engine.salary.service.impl.TaxDeclarationApiBillingServiceImpl;
|
||||
//import com.weaver.common.distribution.genid.IdGenerator;
|
||||
//import com.weaver.hrm.salary.entity.extemployee.po.ExtEmployeePO;
|
||||
//import com.weaver.hrm.salary.entity.taxapiflow.param.TaxDeclarationBillingConfigSaveParam;
|
||||
//import com.weaver.hrm.salary.entity.taxapiflow.po.TaxDeclarationApiFlowWarnConfigPO;
|
||||
//import com.weaver.hrm.salary.enums.salaryitem.SalaryOnOffEnum;
|
||||
//import com.weaver.hrm.salary.enums.taxdeclaration.EnumDeclareApiBusinessType;
|
||||
//import com.weaver.hrm.salary.util.SalaryDateUtil;
|
||||
//import com.weaver.hrm.salary.util.SalaryEnumUtil;
|
||||
//import com.weaver.hrm.salary.util.SalaryI18nUtil;
|
||||
//import com.weaver.mc.api.entity.*;
|
||||
//import com.weaver.mc.util.StringUtils;
|
||||
//import com.weaver.teams.domain.EntityType;
|
||||
//
|
||||
//import java.time.LocalDate;
|
||||
//import java.time.LocalDateTime;
|
||||
//import java.util.*;
|
||||
//import java.util.concurrent.atomic.AtomicInteger;
|
||||
//
|
||||
///**
|
||||
// * @author chengliming
|
||||
// * @date 2022-11-16 1:41 PM
|
||||
// **/
|
||||
//public class TaxApiFlowBO {
|
||||
//
|
||||
// /**
|
||||
// * 流量使用情况
|
||||
// *
|
||||
// * @param wrapper 包装类
|
||||
// * @param taxAgentId
|
||||
// * @param employeeId
|
||||
// * @return
|
||||
// */
|
||||
// public static TaxDeclarationApiFlowRecordPO buildTaxDeclarationApiFlowRecordPO(TaxDeclarationApiBillingServiceImpl.ApiFlowUpdateWrapper wrapper,
|
||||
// Long taxAgentId,
|
||||
// Long employeeId) {
|
||||
// return TaxDeclarationApiFlowRecordPO.builder()
|
||||
// .id(IdGenerator.generate())
|
||||
// .deduct(null)
|
||||
// .businessType(wrapper.getBusinessType().getValue())
|
||||
// .taxMonth(wrapper.getTaxYearMonth())
|
||||
// .useTime(LocalDate.now())
|
||||
// .createTime(LocalDateTime.now())
|
||||
// .updateTime(LocalDateTime.now())
|
||||
// .employeeId(employeeId)
|
||||
// .taxAgentId(taxAgentId)
|
||||
// .resultStatus(TaxAgentTaxReturnStatusEnum.SUCCESS.getValue())
|
||||
// .deleteType(DeleteTypeEnum.NOT_DELETED.getValue())
|
||||
// .tenantKey(wrapper.getTenantKey())
|
||||
// .creator(wrapper.getCurrentEmployeeId())
|
||||
// .build();
|
||||
// }
|
||||
//
|
||||
// public static TaxDeclarationApiFlowRecordListDTO taxDeclarationApiFlowRecordPo2ListDTO(TaxDeclarationApiBillingServiceImpl.TempPropertiesWrapper propertiesWrapper, AtomicInteger indexNum, TaxDeclarationApiFlowRecordPO e) {
|
||||
// String internalUsername = propertiesWrapper.getEmpNameMap().get(e.getEmployeeId());
|
||||
// String idNo = propertiesWrapper.getEmpIdNoMap().get(e.getEmployeeId());
|
||||
// String externalUsername = propertiesWrapper.getExtEmployeeMap().getOrDefault(e.getEmployeeId(), new ExtEmployeePO()).getUsername();
|
||||
// String externalIdNo = propertiesWrapper.getExtEmployeeMap().getOrDefault(e.getEmployeeId(), new ExtEmployeePO()).getCardNum();
|
||||
// String creator = propertiesWrapper.getEmpNameMap().get(e.getCreator());
|
||||
// String taxAgentName = propertiesWrapper.getTaxAgentNameMap().get(e.getTaxAgentId());
|
||||
//
|
||||
// boolean isInternal = StringUtils.isNotEmpty(internalUsername);
|
||||
// return TaxDeclarationApiFlowRecordListDTO.builder()
|
||||
// .id(e.getId())
|
||||
// .indexNum(indexNum.getAndIncrement())
|
||||
// .createTime(SalaryDateUtil.DATE_TIME_FORMATTER.format(e.getCreateTime()))
|
||||
// .taxAgentName(taxAgentName)
|
||||
// .employeeName(isInternal ? internalUsername : externalUsername)
|
||||
// .employeeType(isInternal ? "inside" : "external")
|
||||
// .idCardNo(isInternal ? idNo : externalIdNo)
|
||||
// .employeeId(e.getEmployeeId())
|
||||
// .businessTypeName(SalaryEnumUtil.enumMatchByValue(e.getBusinessType(), EnumDeclareApiBusinessType.class).getDefaultLabel())
|
||||
// .result(TaxAgentTaxReturnStatusEnum.parseByValue(e.getResultStatus()).getDefaultLabel())
|
||||
// .creator(creator)
|
||||
// .creatorId(e.getCreator())
|
||||
// .build();
|
||||
// }
|
||||
//
|
||||
// public static SendMessageEntity buildSendMessageEntity(TaxDeclarationApiFlowWarnConfigPO warnConfig, List<UserEntity> receivers, TaxDeclarationApiBillingServiceImpl.ApiFlowUpdateWrapper updateWrapper) {
|
||||
// String title = SalaryI18nUtil.getI18nLabel(160389, "智能算薪流量不足提醒");
|
||||
// String desc = String.format(SalaryI18nUtil.getI18nLabel(184069, "智能算薪流量已不足%s,请及时采购续费,避免次月无法使用。"), warnConfig.getThreshold());
|
||||
// Entity entity = new Entity()
|
||||
// .setId(IdGenerator.generate() + "")
|
||||
// .setModule(EntityType.hrmsalary.name())
|
||||
// .setName(title)
|
||||
// .setCreatorId(updateWrapper.getCurrentEmployeeId())
|
||||
// .setCreateTime(new Date());
|
||||
//
|
||||
// SendMessageEntity smg = new SendMessageEntity();
|
||||
// // 模块
|
||||
// smg.setModule(MessageModule.HRSA);
|
||||
// // 事件
|
||||
// smg.setEvent(MessageEvent.PAYROLL);
|
||||
// // 业务id
|
||||
// smg.setBusinessId(warnConfig.getBusinessId().toString());
|
||||
// // 发送者
|
||||
// smg.setSender(UserEntity.SYSTEM_USER);
|
||||
// // 接收者
|
||||
// smg.setReceivers(receivers);
|
||||
// // 发送内容(短信&IM的自定义变量)
|
||||
// Map<String, String> params = new HashMap<>();
|
||||
// params.put("flowThreshold", warnConfig.getThreshold().toString());
|
||||
// smg.setDynamicParams(params);
|
||||
// smg.setTitle(title);
|
||||
// smg.setEntity(entity);
|
||||
// smg.setText(desc);
|
||||
// smg.setContent(desc);
|
||||
// // 邮箱
|
||||
// EmailEntity emailEntity = new EmailEntity();
|
||||
// emailEntity.setEmailSubject(title);
|
||||
// emailEntity.setEmailContent(desc);
|
||||
// emailEntity.setMailUserAccountId(0);
|
||||
// smg.setEmailInfo(emailEntity);
|
||||
// return smg;
|
||||
// }
|
||||
//
|
||||
// public static TaxDeclarationApiConfigPO buildTaxDeclarationApiConfigPO(TaxDeclarationBillingConfigSaveParam saveParam,
|
||||
// Long currentEmployeeId,
|
||||
// String currentTenantKey) {
|
||||
// saveParam.setAppKey(Optional.ofNullable(saveParam.getAppKey()).orElse(" "));
|
||||
// saveParam.setAppSecret(Optional.ofNullable(saveParam.getAppSecret()).orElse(" "));
|
||||
// return TaxDeclarationApiConfigPO.builder()
|
||||
// .id(IdGenerator.generate())
|
||||
// .appKey(saveParam.getAppKey())
|
||||
// .appSecret(saveParam.getAppSecret())
|
||||
// .enableUse(SalaryOnOffEnum.valueOf(saveParam.getEnable()).getValue())
|
||||
// .createTime(LocalDateTime.now())
|
||||
// .updateTime(LocalDateTime.now())
|
||||
// .creator(currentEmployeeId)
|
||||
// .tenantKey(currentTenantKey)
|
||||
// .deleteType(DeleteTypeEnum.NOT_DELETED.getValue())
|
||||
// .build();
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public String toString() {
|
||||
// return "TaxApiFlowBO{}";
|
||||
// }
|
||||
//}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-流量提醒-创建规则参数
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-22 11:25:48
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量提醒-创建规则参数")
|
||||
public class CreateMessageRuleParamDTO {
|
||||
@ApiModelProperty("模块")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Integer moduleId;
|
||||
|
||||
@ApiModelProperty("事件")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Integer eventId;
|
||||
|
||||
@ApiModelProperty("业务")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long businessId;
|
||||
}
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-流量使用记录
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-21 16:51:10
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量使用记录")
|
||||
public class TaxDeclarationApiFlowRecordListDTO {
|
||||
@ApiModelProperty("id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("序号")
|
||||
private Integer indexNum;
|
||||
|
||||
@ApiModelProperty("使用时间")
|
||||
private String createTime;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人")
|
||||
private String taxAgentName;
|
||||
|
||||
@ApiModelProperty("人员")
|
||||
private String employeeName;
|
||||
|
||||
@ApiModelProperty("人员类型")
|
||||
private String employeeType;
|
||||
|
||||
@ApiModelProperty("人员id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long employeeId;
|
||||
|
||||
@ApiModelProperty("创建人id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long creatorId;
|
||||
|
||||
@ApiModelProperty("身份证号码")
|
||||
private String idCardNo;
|
||||
|
||||
@ApiModelProperty("接口业务")
|
||||
private String businessTypeName;
|
||||
|
||||
@ApiModelProperty("操作人")
|
||||
private String creator;
|
||||
|
||||
@ApiModelProperty("结果")
|
||||
private String result;
|
||||
}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-流量统计-月度详情
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:01:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量统计-月度详情")
|
||||
public class TaxDeclarationApiFlowStatisticDetailListDTO {
|
||||
@ApiModelProperty("id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@JsonIgnore
|
||||
private Long taxAgentId;
|
||||
|
||||
@JsonIgnore
|
||||
private String taxAgentName;
|
||||
|
||||
@ApiModelProperty("税款所属期")
|
||||
private String taxMonth;
|
||||
|
||||
@ApiModelProperty("月使用流量数")
|
||||
private Integer used;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-流量统计
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:01:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量统计")
|
||||
public class TaxDeclarationApiFlowStatisticListDTO {
|
||||
@ApiModelProperty("id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("序号")
|
||||
private Integer indexNum;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人")
|
||||
private String taxAgentName;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人ID")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long taxAgentId;
|
||||
|
||||
@ApiModelProperty("已使用")
|
||||
private Integer used;
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-流量统计
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:01:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量统计")
|
||||
public class TaxDeclarationApiFlowTotalDTO {
|
||||
@ApiModelProperty("总流量")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long total;
|
||||
|
||||
@ApiModelProperty("剩余流量")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long remain;
|
||||
|
||||
@ApiModelProperty("已使用流量")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long used;
|
||||
|
||||
@ApiModelProperty("最后更新时间")
|
||||
private String lastUpdateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-流量不足提醒-表单
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:01:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量不足提醒-表单")
|
||||
public class TaxDeclarationApiFlowWarnConfigFormDTO {
|
||||
|
||||
@ApiModelProperty("主键id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("提醒开关")
|
||||
private Boolean enable;
|
||||
|
||||
@ApiModelProperty("提醒规则")
|
||||
private Integer threshold;
|
||||
|
||||
@ApiModelProperty("提醒推送方式")
|
||||
private String config;
|
||||
|
||||
@ApiModelProperty("业务ID")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long businessId;
|
||||
|
||||
@ApiModelProperty("模块")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private String moduleId;
|
||||
|
||||
@ApiModelProperty("事件")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private String eventId;
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.engine.salary.common.OptionDTO;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 智能算税-流量不足提醒对象-表单
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:01:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量不足提醒对象-表单")
|
||||
public class TaxDeclarationApiFlowWarnReceiverFormDTO {
|
||||
|
||||
@ApiModelProperty("主键id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("提醒对象")
|
||||
private List<OptionDTO> employee;
|
||||
|
||||
@ApiModelProperty("手机号")
|
||||
private String mobile;
|
||||
|
||||
@ApiModelProperty("邮箱列表")
|
||||
private String email;
|
||||
|
||||
@ApiModelProperty("邮箱列表下拉框")
|
||||
@JsonIgnore
|
||||
private List<String> emailOptions;
|
||||
}
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import net.minidev.json.annotate.JsonIgnore;
|
||||
|
||||
/**
|
||||
* 智能算税-流量提醒对象
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-22 11:25:48
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-流量提醒对象")
|
||||
|
||||
public class TaxDeclarationApiFlowWarnReceiverListDTO {
|
||||
@ApiModelProperty("id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("提醒对象")
|
||||
private String employeeName;
|
||||
|
||||
@JsonIgnore
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long employeeId;
|
||||
|
||||
@ApiModelProperty("手机号")
|
||||
private String mobile;
|
||||
|
||||
@ApiModelProperty("邮箱")
|
||||
private String email;
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
package com.engine.salary.entity.taxapiflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算税-启用设置-表单
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:01:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算税-启用设置-表单")
|
||||
public class TaxDeclarationBillingConfigFormDTO {
|
||||
|
||||
@ApiModelProperty("主键id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("appKey")
|
||||
private String appKey;
|
||||
|
||||
@ApiModelProperty("appSecret")
|
||||
private String appSecret;
|
||||
|
||||
@ApiModelProperty("智能算薪开关")
|
||||
private Boolean enable;
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
package com.engine.salary.entity.taxapiflow.param;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 创建推送规则
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-24 10:50 AM
|
||||
**/
|
||||
@Data
|
||||
public class CreateMessageRuleParam {
|
||||
@ApiModelProperty("业务ID")
|
||||
@NotNull(message = "业务ID不能为空")
|
||||
private String businessId;
|
||||
|
||||
@ApiModelProperty("详细规则")
|
||||
@NotNull(message = "详细规则不能为空")
|
||||
private String config;
|
||||
}
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
package com.engine.salary.entity.taxapiflow.param;
|
||||
|
||||
import com.engine.salary.common.BaseQueryParam;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.time.YearMonth;
|
||||
|
||||
/**
|
||||
* 流量月度详情查询参数
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 15:28:27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("流量月度详情查询参数")
|
||||
public class TaxDeclarationApiFlowMonthQueryParam extends BaseQueryParam {
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
@NotNull(message = "个税扣缴义务人不能为空")
|
||||
private Long taxAgentId;
|
||||
|
||||
@ApiModelProperty("税款所属期开始时间")
|
||||
private YearMonth startTaxMonth;
|
||||
|
||||
@ApiModelProperty("税款所属期结束时间")
|
||||
private YearMonth endTaxMonth;
|
||||
|
||||
public Integer getStartTaxMonth() {
|
||||
if (startTaxMonth == null) {
|
||||
return 0;
|
||||
}
|
||||
return Integer.parseInt(startTaxMonth.toString().replace("-", ""));
|
||||
}
|
||||
|
||||
public Integer getEndTaxMonth() {
|
||||
if (endTaxMonth == null) {
|
||||
return Integer.MAX_VALUE;
|
||||
}
|
||||
return Integer.parseInt(endTaxMonth.toString().replace("-", ""));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
package com.engine.salary.entity.taxapiflow.param;
|
||||
|
||||
import com.engine.salary.common.BaseQueryParam;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* 流量月度详情查询参数
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 15:28:27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("流量月度详情查询参数")
|
||||
public class TaxDeclarationApiFlowRecordQueryParam extends BaseQueryParam {
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
private Long taxAgentId;
|
||||
|
||||
@ApiModelProperty("开始时间")
|
||||
private LocalDate startDate;
|
||||
|
||||
@ApiModelProperty("结束时间")
|
||||
private LocalDate endDate;
|
||||
|
||||
@ApiModelProperty("业务接口类型")
|
||||
private Integer businessType;
|
||||
|
||||
@ApiModelProperty("结果")
|
||||
private Integer result;
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
package com.engine.salary.entity.taxapiflow.param;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 流量不足提醒规则创建
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-24 11:17:31
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("流量不足提醒规则创建")
|
||||
public class TaxDeclarationApiFlowWarnConfigSaveParam {
|
||||
@ApiModelProperty("提醒对象Id")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("提醒阈值")
|
||||
@NotNull(message = "提醒规则不能为空")
|
||||
private Long threshold;
|
||||
|
||||
@ApiModelProperty("提醒开关是否打开")
|
||||
private Boolean enable;
|
||||
|
||||
@ApiModelProperty("业务ID")
|
||||
@NotNull(message = "推送方式不能为空")
|
||||
private Long businessId;
|
||||
|
||||
@ApiModelProperty("规则")
|
||||
private String config;
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
package com.engine.salary.entity.taxapiflow.param;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 流量不足提醒对象
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 15:28:27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("流量不足提醒对象")
|
||||
public class TaxDeclarationApiFlowWarnReceiverSaveParam {
|
||||
@ApiModelProperty("提醒对象Id")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("提醒配置Id")
|
||||
private Long warnConfigId;
|
||||
|
||||
@ApiModelProperty("人员Id")
|
||||
private Long employeeId;
|
||||
|
||||
@ApiModelProperty("邮箱")
|
||||
private String email;
|
||||
|
||||
@ApiModelProperty("手机号")
|
||||
private String mobile;
|
||||
}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
package com.engine.salary.entity.taxapiflow.param;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 智能算薪配置参数
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 15:28:27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("智能算薪配置参数")
|
||||
public class TaxDeclarationBillingConfigSaveParam {
|
||||
|
||||
@ApiModelProperty("appKey")
|
||||
private String appKey;
|
||||
|
||||
@ApiModelProperty("appSecret")
|
||||
private String appSecret;
|
||||
|
||||
@ApiModelProperty("enable")
|
||||
private String enable;
|
||||
|
||||
@ApiModelProperty("配置ID")
|
||||
private Long configId;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
package com.engine.salary.entity.taxapiflow.po;
|
||||
|
||||
import com.engine.salary.enums.SalaryOnOffEnum;
|
||||
import com.engine.salary.enums.taxagent.TaxAgentTaxReturnStatusEnum;
|
||||
import com.engine.salary.enums.taxdeclaration.EnumDeclareApiBusinessType;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 个税申报-接口流量使用记录
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-11 17:36:16
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_tax_api_flow_record")
|
||||
//"个税申报-接口流量使用记录")
|
||||
public class TaxDeclarationApiFlowRecordPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5899885019997144301L;
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人的主键id
|
||||
*/
|
||||
private Long taxAgentId;
|
||||
|
||||
/**
|
||||
* 税款所属期
|
||||
*/
|
||||
private Date taxMonth;
|
||||
|
||||
/**
|
||||
* 使用时间
|
||||
*/
|
||||
private Date useTime;
|
||||
|
||||
/**
|
||||
* 是否扣流量
|
||||
*
|
||||
* @see SalaryOnOffEnum
|
||||
*/
|
||||
private Integer deduct;
|
||||
|
||||
/**
|
||||
* 人员ID
|
||||
*/
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 接口业务类型
|
||||
*
|
||||
* @see EnumDeclareApiBusinessType
|
||||
*/
|
||||
private Integer businessType;
|
||||
|
||||
/**
|
||||
* 结果
|
||||
*
|
||||
* @see TaxAgentTaxReturnStatusEnum
|
||||
*/
|
||||
private Integer resultStatus;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否已删除。0:未删除、1:已删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
private String tenantKey;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
package com.engine.salary.entity.taxapiflow.po;
|
||||
|
||||
import com.engine.salary.enums.SalaryOnOffEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 个税申报对接 - 流量不足提醒
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-14 11:26:02
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_tax_api_flow_warn_config")
|
||||
//个税申报对接流量不足提醒")
|
||||
public class TaxDeclarationApiFlowWarnConfigPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -5502227652635855096L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 是否提醒
|
||||
* @see SalaryOnOffEnum
|
||||
*/
|
||||
private Integer enableWarn;
|
||||
|
||||
/**
|
||||
* 提醒阈值
|
||||
*/
|
||||
private Long threshold;
|
||||
|
||||
/**
|
||||
* 业务ID
|
||||
*/
|
||||
private Long businessId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否已删除。0:未删除、1:已删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
private String tenantKey;
|
||||
}
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
package com.engine.salary.entity.taxapiflow.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 流量不足提醒对象
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-14 11:26:02
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_tax_api_flow_receiver")
|
||||
//流量不足提醒对象")
|
||||
public class TaxDeclarationApiFlowWarnReceiverPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -5502227652635855096L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 提醒配置的id
|
||||
*/
|
||||
private Long warnConfigId;
|
||||
|
||||
/**
|
||||
* 接受人id
|
||||
*/
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 邮箱
|
||||
*/
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String mobile;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否已删除。0:未删除、1:已删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
private String tenantKey;
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
package com.engine.salary.entity.taxapiflow.response;
|
||||
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 查询流量统计
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-16 3:17 PM
|
||||
**/
|
||||
@Data
|
||||
public class QueryAccountBalanceResponse {
|
||||
|
||||
private SzyhResponseHead head;
|
||||
|
||||
private Body body;
|
||||
|
||||
@Data
|
||||
public static class Body {
|
||||
/**
|
||||
* 已购买总流量
|
||||
**/
|
||||
private String total;
|
||||
/**
|
||||
* 已使用流量
|
||||
**/
|
||||
private String used;
|
||||
/**
|
||||
* 剩余流量
|
||||
**/
|
||||
private String surplus;
|
||||
/**
|
||||
* 使用明细
|
||||
*/
|
||||
private List<Detail> taxList;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class Detail {
|
||||
/**
|
||||
* 税号
|
||||
*/
|
||||
private String taxNumber;
|
||||
/**
|
||||
* 已使用流量
|
||||
*/
|
||||
private String used;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
package com.engine.salary.entity.taxapiflow.response;
|
||||
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 查询流量统计
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-16 3:17 PM
|
||||
**/
|
||||
@Data
|
||||
public class QueryDetailsByTaxNumberResponse {
|
||||
|
||||
private SzyhResponseHead head;
|
||||
|
||||
private Body body;
|
||||
|
||||
@Data
|
||||
public static class Body {
|
||||
/**
|
||||
* 税号
|
||||
**/
|
||||
private String taxNumber;
|
||||
/**
|
||||
* 已使用流量
|
||||
**/
|
||||
private String used;
|
||||
/**
|
||||
* 使用明细
|
||||
*/
|
||||
private List<Detail> detail;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class Detail {
|
||||
/**
|
||||
* 月份
|
||||
*/
|
||||
private String month;
|
||||
/**
|
||||
* 已使用流量
|
||||
*/
|
||||
private String used;
|
||||
|
||||
public Integer getMonthValue() {
|
||||
return Integer.parseInt(month);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,167 @@
|
|||
//package com.engine.salary.entity.taxdeclaration.bo;
|
||||
//
|
||||
//import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
|
||||
//import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
|
||||
//import com.engine.salary.util.SalaryEntityUtil;
|
||||
//import com.google.common.collect.Lists;
|
||||
//import com.google.common.collect.Maps;
|
||||
//import com.weaver.common.distribution.genid.IdGenerator;
|
||||
//import com.weaver.common.elog.util.Util;
|
||||
//import com.weaver.hrm.salary.annotation.SalaryFormulaVar;
|
||||
//import com.weaver.hrm.salary.entity.datacollection.po.AddUpSituationPO;
|
||||
//import com.weaver.hrm.salary.entity.salaryacct.po.SalaryAcctRecordPO;
|
||||
//import com.weaver.hrm.salary.entity.salaryacct.po.SalaryAcctResultValuePO;
|
||||
//import com.weaver.hrm.salary.entity.salarysob.po.SalarySobAddUpRulePO;
|
||||
//import com.weaver.hrm.salary.entity.salarysob.po.SalarySobTaxReportRulePO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxDeclarationValuePO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxReportColumnPO;
|
||||
//import com.weaver.hrm.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
//import com.weaver.hrm.salary.enums.salarysob.IncomeCategoryEnum;
|
||||
//import com.weaver.hrm.salary.enums.sicategory.DeleteTypeEnum;
|
||||
//
|
||||
//import java.lang.reflect.Field;
|
||||
//import java.math.BigDecimal;
|
||||
//import java.time.LocalDateTime;
|
||||
//import java.time.YearMonth;
|
||||
//import java.util.List;
|
||||
//import java.util.Map;
|
||||
//import java.util.Objects;
|
||||
//
|
||||
///**
|
||||
// * @description: 通用:一般劳务报酬所得、全年一次性奖金
|
||||
// * @author: xiajun
|
||||
// * @modified By: xiajun
|
||||
// * @date: Created in 2022/12/2 3:16 PM
|
||||
// * @version:v1.0
|
||||
// */
|
||||
//public class TaxDeclarationCommon implements TaxDeclarationStrategy {
|
||||
//
|
||||
// @Override
|
||||
// public TaxDeclarationGenerateResult generate(TaxDeclareContext taxDeclareContext, Long employeeId, String tenantKey) {
|
||||
// LocalDateTime now = LocalDateTime.now();
|
||||
// // 薪资核算结果按照薪资核算人员id聚合分类
|
||||
// Map<Long, SalaryAcctResultPO> salaryAcctResultValueMap = SalaryEntityUtil.convert2Map(
|
||||
// taxDeclareContext.getSalaryAcctResultValues(), SalaryAcctResultPO::getSalaryAcctEmpId);
|
||||
// // 薪资核算人员按照人员id聚合分类
|
||||
// Map<Long, List<SalaryAcctEmployeePO>> employeeIdKeyMap = SalaryEntityUtil.group2Map(
|
||||
// taxDeclareContext.getSalaryAcctEmployees(), SalaryAcctEmployeePO::getEmployeeId);
|
||||
//
|
||||
// List<TaxDeclarationValuePO> taxDeclarationValues = Lists.newArrayListWithExpectedSize(employeeIdKeyMap.size());
|
||||
// for (Map.Entry<Long, List<SalaryAcctEmployeePO>> employeeIdEntry : employeeIdKeyMap.entrySet()) {
|
||||
// // 取最后一次薪资核算记录的核算结果作为个税申报表的数据来源
|
||||
// SalaryAcctEmployeePO lastSalaryAcctEmployee = SalaryEntityUtil.findFirst(employeeIdEntry.getValue());
|
||||
// for (SalaryAcctEmployeePO salaryAcctEmployee : employeeIdEntry.getValue()) {
|
||||
// SalaryAcctRecordPO salaryAcctRecord = taxDeclareContext.getSalaryAcctRecordMap().get(salaryAcctEmployee.getSalaryAcctRecordId());
|
||||
// SalaryAcctRecordPO lastSalaryAcctRecord = taxDeclareContext.getSalaryAcctRecordMap().get(lastSalaryAcctEmployee.getSalaryAcctRecordId());
|
||||
// if (salaryAcctRecord.getCreateTime().compareTo(lastSalaryAcctRecord.getCreateTime()) > 0) {
|
||||
// lastSalaryAcctEmployee = salaryAcctEmployee;
|
||||
// }
|
||||
// }
|
||||
// Map<String, String> valueMap = Maps.newHashMap();
|
||||
// for (TaxReportColumnPO taxReportColumn : taxDeclareContext.getTaxReportColumns()) {
|
||||
// SalarySobTaxReportRulePO salarySobTaxReportRule = taxDeclareContext.getSalarySobTaxReportRuleMap()
|
||||
// .get(lastSalaryAcctEmployee.getSalarySobId() + "-" + taxReportColumn.getReportColumnDataIndex());
|
||||
// SalaryAcctResultValuePO salaryAcctResultValue = salaryAcctResultValueMap.get(lastSalaryAcctEmployee.getId());
|
||||
// String defaultValue = Objects.equals(taxReportColumn.getDataType(), SalaryDataTypeEnum.NUMBER.getValue()) ? "0" : "";
|
||||
// String value = defaultValue;
|
||||
// if (salarySobTaxReportRule != null && salaryAcctResultValue != null) {
|
||||
// value = salaryAcctResultValue.getResultValue().getOrDefault(Util.null2String(salarySobTaxReportRule.getSalaryItemId()), defaultValue);
|
||||
// }
|
||||
// valueMap.put(taxReportColumn.getReportColumnDataIndex(), value);
|
||||
// }
|
||||
// TaxDeclarationValuePO taxDeclarationValue = new TaxDeclarationValuePO()
|
||||
// .setId(IdGenerator.generate())
|
||||
// .setTaxDeclareRecordId(taxDeclareContext.getTaxDeclaration().getTaxDeclareRecordId())
|
||||
// .setTaxDeclarationId(taxDeclareContext.getTaxDeclaration().getId())
|
||||
// .setEmployeeType(employeeIdEntry.getValue().get(0).getEmployeeType())
|
||||
// .setEmployeeId(employeeIdEntry.getKey())
|
||||
// .setResultValue(valueMap)
|
||||
// .setTenantKey(tenantKey)
|
||||
// .setCreator(employeeId)
|
||||
// .setDeleteType(DeleteTypeEnum.NOT_DELETED.getValue())
|
||||
// .setCreateTime(now)
|
||||
// .setUpdateTime(now);
|
||||
// taxDeclarationValues.add(taxDeclarationValue);
|
||||
// }
|
||||
// // 生成累计数据
|
||||
// List<AddUpSituationPO> addUpSituations = generateAddUpSituation(taxDeclareContext, salaryAcctResultValueMap, employeeIdKeyMap);
|
||||
// return new TaxDeclarationGenerateResult()
|
||||
// .setTaxDeclarationValues(taxDeclarationValues)
|
||||
// .setAddUpSituations(addUpSituations);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 生成往期累计数据
|
||||
// *
|
||||
// * @param taxDeclareContext
|
||||
// * @param salaryAcctResultValueMap
|
||||
// * @param employeeIdKeyMap
|
||||
// * @return
|
||||
// */
|
||||
// private List<AddUpSituationPO> generateAddUpSituation(TaxDeclareContext taxDeclareContext,
|
||||
// Map<Long, SalaryAcctResultValuePO> salaryAcctResultValueMap,
|
||||
// Map<Long, List<SalaryAcctEmployeePO>> employeeIdKeyMap) {
|
||||
// List<AddUpSituationPO> addUpSituations = Lists.newArrayList();
|
||||
// // 只有「工资工资薪金」、「保险营销员佣金收入」、「证券经纪人佣金收入」、「其他连续劳务报酬所得」需要累计计税
|
||||
// TaxDeclarationPO taxDeclaration = taxDeclareContext.getTaxDeclaration();
|
||||
// if (!Objects.equals(taxDeclaration.getIncomeCategory(), IncomeCategoryEnum.WAGES_AND_SALARIES.getValue())
|
||||
// && !Objects.equals(taxDeclaration.getIncomeCategory(), IncomeCategoryEnum.INCOME_FOR_INSURANCE_SALESMAN.getValue())
|
||||
// && !Objects.equals(taxDeclaration.getIncomeCategory(), IncomeCategoryEnum.INCOME_FOR_SECURITIES_BROKER.getValue())
|
||||
// && !Objects.equals(taxDeclaration.getIncomeCategory(), IncomeCategoryEnum.REMUNERATION_FOR_OTHER_CONTINUOUS_LABOR.getValue())) {
|
||||
// return addUpSituations;
|
||||
// }
|
||||
// for (Map.Entry<Long, List<SalaryAcctEmployeePO>> employeeIdEntry : employeeIdKeyMap.entrySet()) {
|
||||
// // 取最后一次薪资核算记录的核算结果作为个税申报表的数据来源
|
||||
// SalaryAcctEmployeePO lastSalaryAcctEmployee = SalaryEntityUtil.findFirst(employeeIdEntry.getValue());
|
||||
// for (SalaryAcctEmployeePO salaryAcctEmployee : employeeIdEntry.getValue()) {
|
||||
// SalaryAcctRecordPO salaryAcctRecord = taxDeclareContext.getSalaryAcctRecordMap().get(salaryAcctEmployee.getSalaryAcctRecordId());
|
||||
// SalaryAcctRecordPO lastSalaryAcctRecord = taxDeclareContext.getSalaryAcctRecordMap().get(lastSalaryAcctEmployee.getSalaryAcctRecordId());
|
||||
// if (salaryAcctRecord.getCreateTime().compareTo(lastSalaryAcctRecord.getCreateTime()) > 0) {
|
||||
// lastSalaryAcctEmployee = salaryAcctEmployee;
|
||||
// }
|
||||
// }
|
||||
// SalaryAcctResultValuePO salaryAcctResultValue = salaryAcctResultValueMap.get(lastSalaryAcctEmployee.getId());
|
||||
// Map<String, String> valueMap = Maps.newHashMap();
|
||||
// for (Field declaredField : AddUpSituationPO.class.getDeclaredFields()) {
|
||||
// if (!declaredField.isAnnotationPresent(SalaryFormulaVar.class)) {
|
||||
// continue;
|
||||
// }
|
||||
// SalarySobAddUpRulePO salarySobAddUpRule = taxDeclareContext.getSalarySobAddUpRuleMap()
|
||||
// .get(lastSalaryAcctEmployee.getSalarySobId() + "-" + declaredField.getName());
|
||||
// String value = BigDecimal.ZERO.toPlainString();
|
||||
// if (Objects.nonNull(salarySobAddUpRule) && Objects.nonNull(salaryAcctResultValue)) {
|
||||
// value = salaryAcctResultValue.getResultValue()
|
||||
// .getOrDefault(Util.null2String(salarySobAddUpRule.getSalaryItemId()), BigDecimal.ZERO.toPlainString());
|
||||
// }
|
||||
// valueMap.put(declaredField.getName(), value);
|
||||
// }
|
||||
// AddUpSituationPO addUpSituation = AddUpSituationPO.builder()
|
||||
// .id(IdGenerator.generate())
|
||||
// .employeeId(lastSalaryAcctEmployee.getEmployeeId())
|
||||
// .employeeType(lastSalaryAcctEmployee.getEmployeeType())
|
||||
// .taxAgentId(lastSalaryAcctEmployee.getTaxAgentId())
|
||||
// .taxYearMonth(YearMonth.parse(taxDeclaration.getTaxCycle()).atDay(1))
|
||||
// .year(YearMonth.parse(taxDeclaration.getTaxCycle()).getYear())
|
||||
// .addUpIncome(valueMap.get("addUpIncome"))
|
||||
// .addUpSocialSecurityTotal(valueMap.get("addUpSocialSecurityTotal"))
|
||||
// .addUpAccumulationFundTotal(valueMap.get("addUpAccumulationFundTotal"))
|
||||
// .addUpEnterpriseAndOther(valueMap.get("addUpEnterpriseAndOther"))
|
||||
// .addUpSubtraction(valueMap.get("addUpSubtraction"))
|
||||
// .addUpOtherDeduction(valueMap.get("addUpOtherDeduction"))
|
||||
// .addUpTaxExemptIncome(valueMap.get("addUpTaxExemptIncome"))
|
||||
// .addUpAllowedDonation(valueMap.get("addUpAllowedDonation"))
|
||||
// .addUpAdvanceTax(valueMap.get("addUpAdvanceTax"))
|
||||
// .addUpTaxableIncome(valueMap.get("addUpTaxableIncome"))
|
||||
// .modifier(taxDeclaration.getCreator())
|
||||
// .creator(taxDeclaration.getCreator())
|
||||
// .createTime(taxDeclaration.getCreateTime())
|
||||
// .updateTime(taxDeclaration.getUpdateTime())
|
||||
// .tenantKey(taxDeclaration.getTenantKey())
|
||||
// .deleteType(taxDeclaration.getDeleteType())
|
||||
// .build();
|
||||
// addUpSituations.add(addUpSituation);
|
||||
// }
|
||||
// return addUpSituations;
|
||||
// }
|
||||
//}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package com.engine.salary.entity.taxdeclaration.bo;
|
||||
|
||||
import com.engine.salary.entity.datacollection.AddUpSituation;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationValuePO;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 个税申报表计算过程中产生的结果
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/12/2 9:25 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TaxDeclarationGenerateResult {
|
||||
|
||||
/**
|
||||
* 往期累计清空
|
||||
*/
|
||||
private List<AddUpSituation> addUpSituations;
|
||||
/**
|
||||
* 个税申报明细
|
||||
*/
|
||||
private List<TaxDeclarationValuePO> taxDeclarationValues;
|
||||
}
|
||||
|
|
@ -0,0 +1,165 @@
|
|||
//package com.engine.salary.entity.taxdeclaration.bo;
|
||||
//
|
||||
//import com.engine.salary.report.enums.IncomeCategoryEnum;
|
||||
//import com.google.common.collect.Lists;
|
||||
//import com.google.common.collect.Maps;
|
||||
//import com.weaver.hrm.salary.entity.employeedeclare.po.EmployeeDeclarePO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxDeclarationValuePO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxReportColumnPO;
|
||||
//import com.weaver.hrm.salary.enums.employeedeclare.CardTypeEnum;
|
||||
//import com.weaver.hrm.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
//import com.weaver.hrm.salary.util.SalaryEntityUtil;
|
||||
//import org.apache.commons.collections4.CollectionUtils;
|
||||
//import org.apache.commons.lang3.StringUtils;
|
||||
//import weaver.general.Util;
|
||||
//
|
||||
//import java.math.BigDecimal;
|
||||
//import java.math.RoundingMode;
|
||||
//import java.util.*;
|
||||
//
|
||||
///**
|
||||
// * @description: 个税申报
|
||||
// * @author: xiajun
|
||||
// * @modified By: xiajun
|
||||
// * @date: Created in 2022/11/2 11:18 AM
|
||||
// * @version:v1.0
|
||||
// */
|
||||
//public class TaxDeclarationRequest {
|
||||
//
|
||||
// public static Map<String, Object> convert2RequestParam(List<TaxReportColumnPO> taxReportColumns,
|
||||
// List<TaxDeclarationPO> taxDeclarations,
|
||||
// List<TaxDeclarationValuePO> taxDeclarationValues,
|
||||
// List<EmployeeDeclarePO> employeeDeclares) {
|
||||
// Map<String, Map<String, Object>> objRequestParam = Maps.newHashMap();
|
||||
// Map<String, List<Map<String, Object>>> listRequestParam = Maps.newHashMap();
|
||||
// Map<String, List<TaxReportColumnPO>> taxReportColumnMap = SalaryEntityUtil.group2Map(taxReportColumns, TaxReportColumnPO::getIncomeCategory);
|
||||
// Map<Long, EmployeeDeclarePO> employeeDeclareMap = SalaryEntityUtil.convert2Map(employeeDeclares, EmployeeDeclarePO::getEmployeeId);
|
||||
// Map<Long, List<TaxDeclarationValuePO>> taxDeclarationValueMap = SalaryEntityUtil.group2Map(taxDeclarationValues, TaxDeclarationValuePO::getTaxDeclarationId);
|
||||
// for (TaxDeclarationPO taxDeclaration : taxDeclarations) {
|
||||
// List<TaxDeclarationValuePO> values = taxDeclarationValueMap.get(taxDeclaration.getId());
|
||||
// for (TaxDeclarationValuePO taxDeclarationValue : values) {
|
||||
// EmployeeDeclarePO employeeDeclare = employeeDeclareMap.get(taxDeclarationValue.getEmployeeId());
|
||||
// IncomeCategoryEnum incomeCategoryEnum = IncomeCategoryEnum.parseByValue(taxDeclaration.getIncomeCategory());
|
||||
// if (employeeDeclare == null || incomeCategoryEnum == null) {
|
||||
// continue;
|
||||
// }
|
||||
// List<TaxReportColumnPO> taxReportColumnList = taxReportColumnMap.get(Util.null2String(incomeCategoryEnum.getValue()));
|
||||
// Map<String, Object> employeeRequestParam = convert2RequestParam(incomeCategoryEnum, taxReportColumnList, taxDeclarationValue, employeeDeclare);
|
||||
// if (incomeCategoryEnum == IncomeCategoryEnum.WAGES_AND_SALARIES) {
|
||||
// Map<String, Object> paramMap = objRequestParam.computeIfAbsent("zcgzxj", k -> {
|
||||
// Map<String, Object> param = new HashMap<>();
|
||||
// // 正常工资薪金列表
|
||||
// param.put("zcgzxjlb", Lists.newArrayList());
|
||||
// // 正常工资薪金是否需要专项
|
||||
// param.put("zcgzxjsfxyzx", 0);
|
||||
// // 正常工资薪金是否传入专项累计
|
||||
// param.put("zcgzxjsfcrlj", 1);
|
||||
// return param;
|
||||
// });
|
||||
// List<Map<String, Object>> employeeRequestParams = (List<Map<String, Object>>) paramMap.computeIfAbsent("zcgzxjlb", K -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.ONETIME_ANNUAL_BONUS) {
|
||||
// // 全年一次性奖金收入
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("qnycxjjsslb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.COMPENSATION_FOR_RETIRE) {
|
||||
// // 内退一次性补偿金
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("ntycxbcjlb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.COMPENSATION_FOR_DISMISS) {
|
||||
// // 解除劳动合同一次性补偿金
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("jcldhtycxbcjlb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.INCOME_FOR_INDIVIDUAL_EQUITY_INCENTIVE) {
|
||||
// // 个人股权激励收入
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("grgqjl", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.ANNUITY_RECEIPT) {
|
||||
// // 处理"是否一次性领取"(接口只能传0和1但是接口的错误返回信息告知只能填写是和否,所以需要转一下)
|
||||
// String sfycxlq = Util.null2String(employeeRequestParam.get("sfycxlq"));
|
||||
// employeeRequestParam.put("sfycxlq", Objects.equals("是", sfycxlq) ? "1" : "0");
|
||||
// // 年金领取
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("qynj", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.REMUNERATION_FOR_LABOR) {
|
||||
// // 一般劳务报酬所得
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("lwbclb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.INCOME_FOR_INSURANCE_SALESMAN) {
|
||||
// // 保险营销员佣金收入
|
||||
// Map<String, Object> paramMap = objRequestParam.computeIfAbsent("bxyxy", k -> {
|
||||
// Map<String, Object> param = new HashMap<>();
|
||||
// param.put("bxyxylwbclb", Lists.newArrayList());
|
||||
// return param;
|
||||
// });
|
||||
// List<Map<String, Object>> employeeRequestParams = (List<Map<String, Object>>) paramMap.computeIfAbsent("bxyxylwbclb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.INCOME_FOR_SECURITIES_BROKER) {
|
||||
// // 证券经纪人佣金收入
|
||||
// Map<String, Object> paramMap = objRequestParam.computeIfAbsent("zqjjr", k -> {
|
||||
// Map<String, Object> param = new HashMap<>();
|
||||
// param.put("zqjjrsdlb", Lists.newArrayList());
|
||||
// return param;
|
||||
// });
|
||||
// List<Map<String, Object>> employeeRequestParams = (List<Map<String, Object>>) paramMap.computeIfAbsent("zqjjrsdlb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.REMUNERATION_FOR_OTHER_CONTINUOUS_LABOR) {
|
||||
// // 其他连续劳务报酬所得
|
||||
// Map<String, Object> paramMap = objRequestParam.computeIfAbsent("qtlxlwbc", k -> {
|
||||
// Map<String, Object> param = new HashMap<>();
|
||||
// param.put("qtlxlwbclb", Lists.newArrayList());
|
||||
// return param;
|
||||
// });
|
||||
// List<Map<String, Object>> employeeRequestParams = (List<Map<String, Object>>) paramMap.computeIfAbsent("qtlxlwbclb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.REMUNERATION_FOR_OTHER_LABOR) {
|
||||
// // 其他非连续劳务报酬所得
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("qtflxlwbc", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.REMUNERATION_FOR_AUTHOR) {
|
||||
// // 稿酬所得
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("gcsdlb", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// } else if (incomeCategoryEnum == IncomeCategoryEnum.ROYALTIES) {
|
||||
// // 特许权使用费所得
|
||||
// List<Map<String, Object>> employeeRequestParams = listRequestParam.computeIfAbsent("txq", k -> Lists.newArrayList());
|
||||
// employeeRequestParams.add(employeeRequestParam);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// Map<String, Object> requestParam = Maps.newHashMap();
|
||||
// requestParam.putAll(objRequestParam);
|
||||
// requestParam.putAll(listRequestParam);
|
||||
// return requestParam;
|
||||
// }
|
||||
//
|
||||
// private static Map<String, Object> convert2RequestParam(IncomeCategoryEnum incomeCategoryEnum,
|
||||
// List<TaxReportColumnPO> taxReportColumns,
|
||||
// TaxDeclarationValuePO taxDeclarationValue,
|
||||
// EmployeeDeclarePO employeeDeclare) {
|
||||
// if (CollectionUtils.isEmpty(taxReportColumns)) {
|
||||
// return Collections.emptyMap();
|
||||
// }
|
||||
// Map<String, Object> requestParam = Maps.newHashMap();
|
||||
// // 姓名
|
||||
// requestParam.put("xm", employeeDeclare.getEmployeeName());
|
||||
// // 证件类型
|
||||
// requestParam.put("zzlx", CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel());
|
||||
// // 证件号码
|
||||
// requestParam.put("zzhm", employeeDeclare.getCardNum());
|
||||
// // 所得项目
|
||||
// requestParam.put("sdxm", incomeCategoryEnum.getDefaultLabel());
|
||||
// for (TaxReportColumnPO taxReportColumn : taxReportColumns) {
|
||||
// String value = taxDeclarationValue.getResultValue().getOrDefault(taxReportColumn.getReportColumnDataIndex(), StringUtils.EMPTY);
|
||||
// if (Objects.equals(taxReportColumn.getDataType(), SalaryDataTypeEnum.NUMBER.getValue())) {
|
||||
// value = Util.getBigDecimalValue(taxDeclarationValue.getResultValue().get(taxReportColumn.getReportColumnDataIndex()), BigDecimal.ZERO).toPlainString();
|
||||
// } else if (Objects.equals(taxReportColumn.getDataType(), "integer")) {
|
||||
// value = Util.getBigDecimalValue(taxDeclarationValue.getResultValue().get(taxReportColumn.getReportColumnDataIndex()), BigDecimal.ZERO).setScale(0, RoundingMode.HALF_UP).toPlainString();
|
||||
// }
|
||||
// requestParam.put(taxReportColumn.getRequestParamKey(), value);
|
||||
// }
|
||||
// return requestParam;
|
||||
// }
|
||||
//}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
package com.engine.salary.entity.taxdeclaration.bo;
|
||||
|
||||
import com.engine.salary.entity.datacollection.AddUpSituation;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationValuePO;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 生成个税申报表最后要处理的数据
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/12/5 6:10 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TaxDeclarationResult {
|
||||
|
||||
/**
|
||||
* 个税申报表
|
||||
*/
|
||||
private List<TaxDeclarationPO> taxDeclarations;
|
||||
/**
|
||||
* 个税申报明细
|
||||
*/
|
||||
private List<TaxDeclarationValuePO> taxDeclarationValues;
|
||||
/**
|
||||
* 往期累计情况
|
||||
*/
|
||||
private List<AddUpSituation> addUpSituations;
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package com.engine.salary.entity.taxdeclaration.bo;
|
||||
|
||||
/**
|
||||
* @description: 生成个税申报表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/12/1 4:47 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
public interface TaxDeclarationStrategy {
|
||||
|
||||
/**
|
||||
* 生成个税申报表
|
||||
*
|
||||
* @param taxDeclareContext
|
||||
* @param employeeId
|
||||
* @param tenantKey
|
||||
* @return
|
||||
*/
|
||||
TaxDeclarationGenerateResult generate(TaxDeclareContext taxDeclareContext, Long employeeId, String tenantKey);
|
||||
}
|
||||
|
|
@ -0,0 +1,115 @@
|
|||
//package com.engine.salary.entity.taxdeclaration.bo;
|
||||
//
|
||||
//import com.google.common.collect.Lists;
|
||||
//import com.google.common.collect.Maps;
|
||||
//import com.weaver.common.component.table.column.WeaTableColumn;
|
||||
//import com.weaver.hrm.salary.entity.employeedeclare.po.EmployeeDeclarePO;
|
||||
//import com.weaver.hrm.salary.entity.extemployee.po.ExtEmployeePO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxDeclarationValuePO;
|
||||
//import com.weaver.hrm.salary.entity.taxdeclaration.po.TaxReportColumnPO;
|
||||
//import com.weaver.hrm.salary.enums.employeedeclare.CardTypeEnum;
|
||||
//import com.weaver.hrm.salary.enums.salaryaccounting.EmployeeTypeEnum;
|
||||
//import com.weaver.hrm.salary.enums.salarysob.IncomeCategoryEnum;
|
||||
//import com.weaver.hrm.salary.util.SalaryEntityUtil;
|
||||
//import com.weaver.hrm.salary.util.SalaryI18nUtil;
|
||||
//import com.weaver.teams.domain.hr.SimpleUserInfo;
|
||||
//import com.weaver.teams.domain.user.SimpleEmployee;
|
||||
//import lombok.Data;
|
||||
//import org.apache.commons.collections4.CollectionUtils;
|
||||
//
|
||||
//import java.util.Collections;
|
||||
//import java.util.List;
|
||||
//import java.util.Map;
|
||||
//import java.util.Objects;
|
||||
//
|
||||
///**
|
||||
// * @description: 个税申报表详情
|
||||
// * @author: xiajun
|
||||
// * @modified By: xiajun
|
||||
// * @date: 2022/3/14 18:31
|
||||
// * @version:v1.0
|
||||
// */
|
||||
//@Data
|
||||
//public class TaxDeclarationValueList {
|
||||
//
|
||||
// /**
|
||||
// * 个税申报表的表头
|
||||
// *
|
||||
// * @param taxReportColumns
|
||||
// * @return
|
||||
// */
|
||||
// public static List<WeaTableColumn> buildTableColumns(List<TaxReportColumnPO> taxReportColumns) {
|
||||
// List<WeaTableColumn> weaTableColumns = Lists.newArrayList();
|
||||
// weaTableColumns.add(new WeaTableColumn(SalaryI18nUtil.getI18nLabel(86317, "工号"), "jobNum", "120"));
|
||||
// weaTableColumns.add(new WeaTableColumn(SalaryI18nUtil.getI18nLabel(85429, "姓名"), "username", "120"));
|
||||
// weaTableColumns.add(new WeaTableColumn(SalaryI18nUtil.getI18nLabel(105139, "证件类型"), "cardType", "120"));
|
||||
// weaTableColumns.add(new WeaTableColumn(SalaryI18nUtil.getI18nLabel(86318, "证件号码"), "cardNum", "150"));
|
||||
// weaTableColumns.add(new WeaTableColumn(SalaryI18nUtil.getI18nLabel(102786, "所得项目"), "incomeCategory", "120"));
|
||||
// for (TaxReportColumnPO taxReportColumn : taxReportColumns) {
|
||||
// weaTableColumns.add(new WeaTableColumn(SalaryI18nUtil.getI18nLabel(taxReportColumn.getReportColumnLabel(), taxReportColumn.getReportColumnName()), taxReportColumn.getReportColumnDataIndex(), "120"));
|
||||
// }
|
||||
// return weaTableColumns;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 个税申报表的数据
|
||||
// *
|
||||
// * @param taxReportColumns
|
||||
// * @param taxDeclarationValues
|
||||
// * @param simpleEmployees
|
||||
// * @param simpleUserInfos
|
||||
// * @param extEmployees
|
||||
// * @return
|
||||
// */
|
||||
// public static List<Map<String, Object>> buildTableData(IncomeCategoryEnum incomeCategoryEnum,
|
||||
// List<TaxReportColumnPO> taxReportColumns,
|
||||
// List<TaxDeclarationValuePO> taxDeclarationValues,
|
||||
// List<EmployeeDeclarePO> employeeDeclares,
|
||||
// List<SimpleEmployee> simpleEmployees,
|
||||
// List<SimpleUserInfo> simpleUserInfos,
|
||||
// List<ExtEmployeePO> extEmployees) {
|
||||
// if (CollectionUtils.isEmpty(simpleEmployees)) {
|
||||
// return Collections.emptyList();
|
||||
// }
|
||||
// List<Map<String, Object>> tableDataList = Lists.newArrayList();
|
||||
// // 员工基本信息按照人员id聚合分类
|
||||
// Map<Long, SimpleEmployee> simpleEmployeeMap = SalaryEntityUtil.convert2Map(simpleEmployees, SimpleEmployee::getEmployeeId);
|
||||
// // 员工报送信息按照人员id聚合分类
|
||||
// Map<Long, EmployeeDeclarePO> employeeDeclareMap = SalaryEntityUtil.convert2Map(employeeDeclares, EmployeeDeclarePO::getEmployeeId);
|
||||
// // 员工个人信息按照人员id聚合分类
|
||||
// Map<Long, SimpleUserInfo> simpleUserInfoMap = SalaryEntityUtil.convert2Map(simpleUserInfos, e -> e.getUser().getId());
|
||||
// // 非系统员工按照人员id聚合分类
|
||||
// Map<Long, ExtEmployeePO> extEmployeeMap = SalaryEntityUtil.convert2Map(extEmployees, ExtEmployeePO::getId);
|
||||
// for (TaxDeclarationValuePO taxDeclarationValue : taxDeclarationValues) {
|
||||
// Map<String, Object> dataMap = Maps.newHashMap();
|
||||
// dataMap.put("id", taxDeclarationValue.getId().toString());
|
||||
// dataMap.put("employeeId", taxDeclarationValue.getEmployeeId() + "");
|
||||
// dataMap.put("incomeCategory", incomeCategoryEnum.getDefaultLabel());
|
||||
// for (TaxReportColumnPO taxReportColumn : taxReportColumns) {
|
||||
// dataMap.put(taxReportColumn.getReportColumnDataIndex(), taxDeclarationValue.getResultValue().get(taxReportColumn.getReportColumnDataIndex()));
|
||||
// }
|
||||
// EmployeeDeclarePO employeeDeclare = employeeDeclareMap.get(taxDeclarationValue.getEmployeeId());
|
||||
// if (employeeDeclare != null) {
|
||||
// dataMap.put("jobNum", employeeDeclare.getJobNum());
|
||||
// dataMap.put("username", employeeDeclare.getEmployeeName());
|
||||
// dataMap.put("cardType", SalaryI18nUtil.getI18nLabel(CardTypeEnum.RESIDENT_IDENTITY_CARDS.getLabelId(), CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel()));
|
||||
// dataMap.put("cardNum", employeeDeclare.getCardNum());
|
||||
// } else if (Objects.equals(taxDeclarationValue.getEmployeeType(), EmployeeTypeEnum.ORGANIZATION.getValue())) {
|
||||
// SimpleEmployee simpleEmployee = simpleEmployeeMap.get(taxDeclarationValue.getEmployeeId());
|
||||
// SimpleUserInfo simpleUserInfo = simpleUserInfoMap.get(taxDeclarationValue.getEmployeeId());
|
||||
// dataMap.put("jobNum", simpleEmployee.getJobNum());
|
||||
// dataMap.put("username", simpleEmployee.getUsername());
|
||||
// dataMap.put("cardType", SalaryI18nUtil.getI18nLabel(CardTypeEnum.RESIDENT_IDENTITY_CARDS.getLabelId(), CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel()));
|
||||
// dataMap.put("cardNum", simpleUserInfo == null ? "" : simpleUserInfo.getIdNo());
|
||||
// } else {
|
||||
// ExtEmployeePO extEmployee = extEmployeeMap.get(taxDeclarationValue.getEmployeeId());
|
||||
// dataMap.put("jobNum", "");
|
||||
// dataMap.put("username", extEmployee.getUsername());
|
||||
// dataMap.put("cardType", SalaryI18nUtil.getI18nLabel(CardTypeEnum.RESIDENT_IDENTITY_CARDS.getLabelId(), CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel()));
|
||||
// dataMap.put("cardNum", extEmployee.getCardNum());
|
||||
// }
|
||||
// tableDataList.add(dataMap);
|
||||
// }
|
||||
// return tableDataList;
|
||||
// }
|
||||
//}
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
//package com.engine.salary.entity.taxdeclaration.bo;
|
||||
//
|
||||
//import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
|
||||
//import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
|
||||
//import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
|
||||
//import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
//import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
||||
//import com.engine.salary.entity.taxdeclaration.po.TaxReportColumnPO;
|
||||
//import com.weaver.hrm.salary.entity.salarysob.po.SalarySobAddUpRulePO;
|
||||
//import com.weaver.hrm.salary.entity.salarysob.po.SalarySobTaxReportRulePO;
|
||||
//import lombok.Data;
|
||||
//import lombok.experimental.Accessors;
|
||||
//
|
||||
//import java.util.List;
|
||||
//import java.util.Map;
|
||||
//
|
||||
///**
|
||||
// * @description: 生成个税申报表所需的数据
|
||||
// * @author: xiajun
|
||||
// * @modified By: xiajun
|
||||
// * @date: Created in 2022/12/2 2:29 PM
|
||||
// * @version:v1.0
|
||||
// */
|
||||
//@Data
|
||||
//@Accessors(chain = true)
|
||||
//public class TaxDeclareContext {
|
||||
//
|
||||
// /**
|
||||
// * 薪资核算记录
|
||||
// */
|
||||
// private Map<Long, SalaryAcctRecordPO> salaryAcctRecordMap;
|
||||
// /**
|
||||
// * 薪资核算人员
|
||||
// */
|
||||
// private List<SalaryAcctEmployeePO> salaryAcctEmployees;
|
||||
// /**
|
||||
// * 薪资核算结果
|
||||
// */
|
||||
// private List<SalaryAcctResultPO> salaryAcctResultValues;
|
||||
// /**
|
||||
// * 个税申报表
|
||||
// */
|
||||
// private TaxDeclarationPO taxDeclaration;
|
||||
// /**
|
||||
// * 个税申报表字段
|
||||
// */
|
||||
// private List<TaxReportColumnPO> taxReportColumns;
|
||||
// /**
|
||||
// * 薪资账套的个税申报表规则。key:薪资账套id-个税申报表字段索引、value:薪资账套的个税申报表规则
|
||||
// */
|
||||
// private Map<String, SalarySobTaxReportRulePO> salarySobTaxReportRuleMap;
|
||||
// /**
|
||||
// * 薪资账套的累计字段对应关系。key:薪资账套id-往期累计情况的字段索引、value:薪资账套的累计字段对应关系
|
||||
// */
|
||||
// private Map<String, SalarySobAddUpRulePO> salarySobAddUpRuleMap;
|
||||
// /**
|
||||
// * 薪资项目
|
||||
// */
|
||||
// private List<SalaryItemPO> salaryItems;
|
||||
//}
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
//package com.engine.salary.entity.taxdeclaration.bo;
|
||||
//
|
||||
//import com.engine.salary.entity.taxdeclaration.dto.AbnormalEmployeeListDTO;
|
||||
//import com.engine.salary.entity.taxdeclaration.po.TaxDeclareEmployeePO;
|
||||
//import com.google.common.collect.Lists;
|
||||
//import com.weaver.hrm.salary.entity.employeedeclare.po.EmployeeDeclarePO;
|
||||
//import com.weaver.hrm.salary.entity.extemployee.po.ExtEmployeePO;
|
||||
//import com.weaver.hrm.salary.enums.employeedeclare.CardTypeEnum;
|
||||
//import com.weaver.hrm.salary.enums.employeedeclare.DeclareStatusEnum;
|
||||
//import com.weaver.hrm.salary.enums.salaryaccounting.EmployeeTypeEnum;
|
||||
//import com.weaver.hrm.salary.util.SalaryEntityUtil;
|
||||
//import com.weaver.hrm.salary.util.SalaryEnumUtil;
|
||||
//import com.weaver.hrm.salary.util.SalaryI18nUtil;
|
||||
//import com.weaver.teams.domain.hr.SimpleUserInfo;
|
||||
//import com.weaver.teams.domain.user.SimpleEmployee;
|
||||
//import org.apache.commons.collections4.CollectionUtils;
|
||||
//
|
||||
//import java.util.Collections;
|
||||
//import java.util.List;
|
||||
//import java.util.Map;
|
||||
//import java.util.Objects;
|
||||
//import java.util.function.Function;
|
||||
//import java.util.stream.Collectors;
|
||||
//
|
||||
///**
|
||||
// * @description: 个税申报明细表中的人员
|
||||
// * @author: xiajun
|
||||
// * @modified By: xiajun
|
||||
// * @date: Created in 2022/11/10 4:20 PM
|
||||
// * @version:v1.0
|
||||
// */
|
||||
//public class TaxDeclareEmployeeBO {
|
||||
//
|
||||
// public static List<AbnormalEmployeeListDTO> convert2AbnormalEmployee(List<TaxDeclareEmployeePO> taxDeclareEmployees,
|
||||
// List<EmployeeDeclarePO> employeeDeclares,
|
||||
// List<SimpleEmployee> simpleEmployees,
|
||||
// List<SimpleUserInfo> simpleUserInfos,
|
||||
// List<ExtEmployeePO> extEmployees) {
|
||||
// if (CollectionUtils.isEmpty(taxDeclareEmployees)) {
|
||||
// return Collections.emptyList();
|
||||
// }
|
||||
// List<AbnormalEmployeeListDTO> abnormalEmployeeList = Lists.newArrayList();
|
||||
// Map<Long, EmployeeDeclarePO> employeeDeclareMap = SalaryEntityUtil.convert2Map(employeeDeclares, EmployeeDeclarePO::getEmployeeId);
|
||||
// Map<Long, SimpleEmployee> simpleEmployeeMap = SalaryEntityUtil.convert2Map(simpleEmployees, SimpleEmployee::getEmployeeId);
|
||||
// Map<Long, SimpleUserInfo> simpleUserInfoMap = simpleUserInfos.stream()
|
||||
// .filter(simpleUserInfo -> Objects.nonNull(simpleUserInfo) && Objects.nonNull(simpleUserInfo.getUser()))
|
||||
// .collect(Collectors.toMap(simpleUserInfo -> simpleUserInfo.getUser().getId(), Function.identity(), (a, b) -> a));
|
||||
// Map<Long, ExtEmployeePO> extEmployeePOMap = SalaryEntityUtil.convert2Map(extEmployees, ExtEmployeePO::getId);
|
||||
// for (TaxDeclareEmployeePO taxDeclareEmployee : taxDeclareEmployees) {
|
||||
// AbnormalEmployeeListDTO abnormalEmployeeListDTO = new AbnormalEmployeeListDTO()
|
||||
// .setId(taxDeclareEmployee.getEmployeeId())
|
||||
// .setEmployeeId(taxDeclareEmployee.getEmployeeId())
|
||||
// .setEmployeeType(taxDeclareEmployee.getEmployeeType());
|
||||
// EmployeeDeclarePO employeeDeclare = employeeDeclareMap.get(taxDeclareEmployee.getEmployeeId());
|
||||
// if (employeeDeclare != null) {
|
||||
// DeclareStatusEnum declareStatusEnum = SalaryEnumUtil.enumMatchByValue(employeeDeclare.getDeclareStatus(), DeclareStatusEnum.class);
|
||||
// abnormalEmployeeListDTO
|
||||
// .setEmployeeName(employeeDeclare.getEmployeeName())
|
||||
// .setJobNum(employeeDeclare.getJobNum())
|
||||
// .setCardType(SalaryI18nUtil.getI18nLabel(CardTypeEnum.RESIDENT_IDENTITY_CARDS.getLabelId(), CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel()))
|
||||
// .setCardNum(employeeDeclare.getCardNum())
|
||||
// .setDeclareStatus(declareStatusEnum)
|
||||
// .setDeclareStatusDesc(declareStatusEnum == null ? "" : SalaryI18nUtil.getI18nLabel(declareStatusEnum.getLabelId(), declareStatusEnum.getDefaultLabel()));
|
||||
// } else if (Objects.equals(taxDeclareEmployee.getEmployeeType(), EmployeeTypeEnum.ORGANIZATION.getValue())) {
|
||||
// SimpleEmployee simpleEmployee = simpleEmployeeMap.get(taxDeclareEmployee.getEmployeeId());
|
||||
// SimpleUserInfo simpleUserInfo = simpleUserInfoMap.get(taxDeclareEmployee.getEmployeeId());
|
||||
// abnormalEmployeeListDTO
|
||||
// .setEmployeeName(simpleEmployee.getUsername())
|
||||
// .setJobNum(simpleEmployee.getJobNum())
|
||||
// .setCardType(SalaryI18nUtil.getI18nLabel(CardTypeEnum.RESIDENT_IDENTITY_CARDS.getLabelId(), CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel()))
|
||||
// .setCardNum(simpleUserInfo == null ? "" : simpleUserInfo.getIdNo())
|
||||
// .setDeclareStatus(null)
|
||||
// .setDeclareStatusDesc(SalaryI18nUtil.getI18nLabel(177863, "报送人员列表中无此人员"));
|
||||
// } else {
|
||||
// ExtEmployeePO extEmployee = extEmployeePOMap.get(taxDeclareEmployee.getEmployeeId());
|
||||
// abnormalEmployeeListDTO
|
||||
// .setEmployeeName(extEmployee.getUsername())
|
||||
// .setJobNum("")
|
||||
// .setCardType(SalaryI18nUtil.getI18nLabel(CardTypeEnum.RESIDENT_IDENTITY_CARDS.getLabelId(), CardTypeEnum.RESIDENT_IDENTITY_CARDS.getDefaultLabel()))
|
||||
// .setCardNum(extEmployee.getCardNum())
|
||||
// .setDeclareStatus(null)
|
||||
// .setDeclareStatusDesc(SalaryI18nUtil.getI18nLabel(177863, "报送人员列表中无此人员"));
|
||||
// }
|
||||
// abnormalEmployeeList.add(abnormalEmployeeListDTO);
|
||||
// }
|
||||
// return abnormalEmployeeList;
|
||||
// }
|
||||
//}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package com.engine.salary.entity.taxdeclaration.bo;
|
||||
|
||||
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationApiConfigPO;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclareRecordPO;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: 个税申报相关接口的请求参数
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2023/2/6 5:24 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TaxDeclareRequest {
|
||||
|
||||
/**
|
||||
* 供应商信息
|
||||
*/
|
||||
private TaxDeclarationApiConfigPO taxDeclarationApiConfig;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人
|
||||
*/
|
||||
private TaxAgentPO taxAgent;
|
||||
|
||||
/**
|
||||
* 个税申报记录
|
||||
*/
|
||||
private TaxDeclareRecordPO taxDeclareRecord;
|
||||
|
||||
/**
|
||||
* 请求参数
|
||||
*/
|
||||
private Map<String, Object> requestParam;
|
||||
}
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import com.weaver.common.component.table.type.WeaTableTypeEnum;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTable;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTableColumn;
|
||||
import com.weaver.hrm.salary.enums.employeedeclare.DeclareStatusEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
import org.codehaus.jackson.map.annotate.JsonSerialize;
|
||||
import org.codehaus.jackson.map.ser.std.ToStringSerializer;
|
||||
|
||||
/**
|
||||
* @description: 个税申报-校验异常的人员列表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/10 2:28 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@SalaryTable(tableType = WeaTableTypeEnum.NONE, pageUid = "abnormalEmployeeList")
|
||||
public class AbnormalEmployeeListDTO {
|
||||
|
||||
@ApiModelProperty("主键id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("关联人员类型")
|
||||
private Integer employeeType;
|
||||
|
||||
@ApiModelProperty("关联人员id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long employeeId;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "姓名",
|
||||
labelId = 85429,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("姓名")
|
||||
private String employeeName;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "工号",
|
||||
labelId = 86317,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("工号")
|
||||
private String jobNum;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "证件类型",
|
||||
labelId = 105139,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("证件类型")
|
||||
private String cardType;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "证件号码",
|
||||
labelId = 86318,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("证件号码")
|
||||
private String cardNum;
|
||||
|
||||
@ApiModelProperty("报送状态")
|
||||
private DeclareStatusEnum declareStatus;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "报送状态",
|
||||
labelId = 177862,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("报送状态")
|
||||
private String declareStatusDesc;
|
||||
}
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import com.weaver.common.component.table.type.WeaTableTypeEnum;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTable;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTableColumn;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
import org.codehaus.jackson.map.annotate.JsonSerialize;
|
||||
import org.codehaus.jackson.map.ser.std.ToStringSerializer;
|
||||
|
||||
/**
|
||||
* @description: 个税申报-申报失败的人员列表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/30 2:22 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@SalaryTable(tableType = WeaTableTypeEnum.NONE, pageUid = "failEmployeeList")
|
||||
public class FailEmployeeListDTO {
|
||||
|
||||
@ApiModelProperty("主键id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "姓名",
|
||||
labelId = 85429,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("姓名")
|
||||
private String employeeName;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long taxAgentId;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "个税扣缴义务人名称",
|
||||
labelId = 91558,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("个税扣缴义务人名称")
|
||||
private String taxAgentName;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "证件号码",
|
||||
labelId = 86318,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("证件号码")
|
||||
private String cardNum;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "失败原因",
|
||||
labelId = 156405,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("失败原因")
|
||||
private String errorMsg;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "所得项目",
|
||||
labelId = 102786,
|
||||
width = "150"
|
||||
)
|
||||
@ApiModelProperty("所得项目")
|
||||
private String incomeCategory;
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @description:
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: 2022/7/12 11:39
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TaxDeclarationRateDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8478996890743085394L;
|
||||
|
||||
@ApiModelProperty("缓存索引")
|
||||
private String index;
|
||||
@ApiModelProperty("提示信息")
|
||||
private String msg;
|
||||
@ApiModelProperty("状态")
|
||||
private boolean status;
|
||||
@ApiModelProperty("是否已经完成")
|
||||
private boolean finish;
|
||||
@ApiModelProperty("提示信息是否自动消失")
|
||||
private boolean msgPersist;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import com.weaver.hrm.salary.enums.salarysob.IncomeCategoryEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* @description: 个税申报表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/10 11:40 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TaxDeclarationTabDTO {
|
||||
|
||||
@ApiModelProperty("Tab页签的名称")
|
||||
private String tabName;
|
||||
|
||||
@ApiModelProperty("收入所得类型")
|
||||
private IncomeCategoryEnum incomeCategory;
|
||||
|
||||
@ApiModelProperty("个税申报表id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long taxDeclarationId;
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import com.weaver.common.component.table.column.WeaTableColumn;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: 个税申报表详情列表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/12/6 1:28 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TaxDeclarationValueListDTO {
|
||||
|
||||
/**
|
||||
* 个税申报表表头
|
||||
*/
|
||||
private List<WeaTableColumn> columns;
|
||||
|
||||
/**
|
||||
* 个税申报表数据
|
||||
*/
|
||||
private List<Map<String, Object>> data;
|
||||
}
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import com.weaver.common.component.form.item.WeaFormItemType;
|
||||
import com.weaver.hrm.salary.annotation.SalaryForm;
|
||||
import com.weaver.hrm.salary.annotation.SalaryFormItem;
|
||||
import com.weaver.hrm.salary.enums.taxdeclaration.TaxAgentRangeEnum;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.YearMonth;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: 个税申报记录表单
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 12/15/21 9:40 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("个税申报记录表单")
|
||||
public class TaxDeclareRecordFormDTO {
|
||||
|
||||
@SalaryForm(
|
||||
label = "薪资所属月",
|
||||
labelId = 87614,
|
||||
items = @SalaryFormItem(itemType = WeaFormItemType.DATEPICKER, required = true)
|
||||
)
|
||||
@ApiModelProperty("薪资所属月")
|
||||
private YearMonth salaryMonth;
|
||||
|
||||
@SalaryForm(
|
||||
label = "个税扣缴义务人范围",
|
||||
labelId = 160476,
|
||||
items = @SalaryFormItem(itemType = WeaFormItemType.RADIO, required = true, optionsEnum = TaxAgentRangeEnum.class)
|
||||
)
|
||||
@ApiModelProperty("个税扣缴义务人范围")
|
||||
private TaxAgentRangeEnum taxAgentRange;
|
||||
|
||||
@SalaryForm(
|
||||
label = "个税扣缴义务人",
|
||||
labelId = 86184,
|
||||
items = @SalaryFormItem(itemType = WeaFormItemType.BROWSER, required = true, browserModule = "hrmsalary",
|
||||
browserType = "TaxAgentBrowser", browserMultiple = true)
|
||||
)
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
private List<Map<String, Object>> taxAgentIds;
|
||||
|
||||
@SalaryForm(
|
||||
label = "备注",
|
||||
labelId = 84961,
|
||||
items = @SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "30")
|
||||
)
|
||||
@ApiModelProperty("备注")
|
||||
private String description;
|
||||
}
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
package com.engine.salary.entity.taxdeclaration.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import com.weaver.common.component.table.type.WeaTableTypeEnum;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTable;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTableColumn;
|
||||
import com.weaver.hrm.salary.annotation.SalaryTableOperate;
|
||||
import com.weaver.hrm.salary.enums.taxdeclaration.TaxDeclareStatusEnum;
|
||||
import com.weaver.hrm.salary.enums.taxdeclaration.TaxDeclareTypeEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* @description: 个税申报记录列表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/10 9:25 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@SalaryTable(value = {
|
||||
@SalaryTableOperate(index = 0, text = "查看详情", labelId = 93216, outer = true),
|
||||
@SalaryTableOperate(index = 1, text = "删除", labelId = 87061, outer = true)
|
||||
}, tableType = WeaTableTypeEnum.NONE, pageUid = "taxAgentDeclareList")
|
||||
public class TaxDeclareRecordListDTO {
|
||||
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("个税扣缴义务人")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long taxAgentId;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "个税扣缴义务人",
|
||||
labelId = 86184,
|
||||
width = "15%"
|
||||
)
|
||||
@ApiModelProperty("个税扣缴义务人名称")
|
||||
private String taxAgentName;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "薪资所属月",
|
||||
labelId = 87614,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("薪资所属月")
|
||||
private String salaryMonth;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "税款所属期",
|
||||
labelId = 86176,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("税款所属期")
|
||||
private String taxCycle;
|
||||
|
||||
@ApiModelProperty("申报类型")
|
||||
private TaxDeclareTypeEnum taxDeclareType;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "申报类型",
|
||||
labelId = 177641,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("申报类型")
|
||||
private String taxDeclareTypeDesc;
|
||||
|
||||
@ApiModelProperty("申报状态")
|
||||
private TaxDeclareStatusEnum taxDeclareStatus;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "申报状态",
|
||||
labelId = 156414,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("申报状态")
|
||||
private String taxDeclareStatusDesc;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "已缴金额",
|
||||
labelId = 179035,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("已缴金额")
|
||||
private String taxPaidAmount;
|
||||
|
||||
@ApiModelProperty("操作人id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long operateEmployeeId;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "操作人",
|
||||
labelId = 85435,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("操作人名称")
|
||||
private String operateEmployeeName;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "操作时间",
|
||||
labelId = 85436,
|
||||
width = "15%"
|
||||
)
|
||||
@ApiModelProperty("操作时间")
|
||||
private String operateTime;
|
||||
|
||||
@SalaryTableColumn(
|
||||
label = "备注",
|
||||
labelId = 84961,
|
||||
width = "10%"
|
||||
)
|
||||
@ApiModelProperty("备注")
|
||||
private String description;
|
||||
|
||||
@ApiModelProperty("是否展示图标")
|
||||
private boolean displayIcon;
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
package com.engine.salary.entity.taxdeclaration.param;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.weaver.hrm.salary.common.BaseQueryParam;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* @description: 个税申报-异常数据-未报送人员列表
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/10 1:54 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class AbnormalEmployeeListQueryParam extends BaseQueryParam {
|
||||
|
||||
@ApiModelProperty("工号、姓名、身份证号码")
|
||||
private String keyword;
|
||||
|
||||
@ApiModelProperty("个税申报记录id")
|
||||
private Long taxDeclareRecordId;
|
||||
|
||||
@JsonIgnore
|
||||
@ApiModelProperty("个税扣缴义务人id")
|
||||
private Long taxAgentId;
|
||||
|
||||
@JsonIgnore
|
||||
@ApiModelProperty("税款所属期")
|
||||
private String taxCycle;
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
package com.engine.salary.entity.taxdeclaration.param;
|
||||
|
||||
import com.weaver.hrm.salary.common.BaseQueryParam;
|
||||
import com.weaver.hrm.salary.enums.salarysob.IncomeCategoryEnum;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 个税申报记录详情列表查询参数
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 12/15/21 3:21 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@ApiModel("个税申报表记录列表查询参数")
|
||||
public class TaxDeclarationValueListQueryParam extends BaseQueryParam {
|
||||
|
||||
@ApiModelProperty("个税申报记录id")
|
||||
private Long taxDeclareRecordId;
|
||||
|
||||
@ApiModelProperty("个税申报表id")
|
||||
private Long taxDeclarationId;
|
||||
|
||||
@ApiModelProperty("收入所得项目")
|
||||
private IncomeCategoryEnum incomeCategory;
|
||||
|
||||
@ApiModelProperty("导出excel时加密的密码")
|
||||
private String sharePassword;
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package com.engine.salary.entity.taxdeclaration.param;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 个税申报
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/11 2:56 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class TaxDeclareRecordParam {
|
||||
|
||||
@ApiModelProperty("个税申报记录id")
|
||||
private Long taxDeclareRecordId;
|
||||
}
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 个税申报相关api配置
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-09 09:49:08
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_tax_declare_api_config")
|
||||
public class TaxDeclarationApiConfigPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 2287550079146871129L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 接口host
|
||||
*/
|
||||
private String host;
|
||||
/**
|
||||
* app key
|
||||
*/
|
||||
private String appKey;
|
||||
/**
|
||||
* 密钥
|
||||
*/
|
||||
private String appSecret;
|
||||
|
||||
/**
|
||||
* 是否开启使用
|
||||
*/
|
||||
private Integer enableUse;
|
||||
|
||||
/**
|
||||
* 总流量
|
||||
*/
|
||||
private Long totality;
|
||||
|
||||
/**
|
||||
* 剩余流量
|
||||
*/
|
||||
private Long remain;
|
||||
|
||||
/**
|
||||
* 流量最后更新时间
|
||||
*/
|
||||
private LocalDateTime lastUpdateTime;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import com.engine.salary.enums.taxdeclaration.TaxDeclareApiProfileEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 个税申报相关api配置
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-11-09 09:49:08
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_tax_declare_api_profile")
|
||||
public class TaxDeclarationApiProfilePO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8281861662866222040L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 接口环境
|
||||
*
|
||||
* @see TaxDeclareApiProfileEnum
|
||||
*/
|
||||
private Integer apiProfile;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: 个税申报表的值
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 9/27/22 5:03 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
//hrsa_tax_declaration_value")
|
||||
public class TaxDeclarationValuePO implements Serializable {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 个税申报表id
|
||||
*/
|
||||
private Long taxDeclarationId;
|
||||
|
||||
/**
|
||||
* 个税申报记录id
|
||||
*/
|
||||
private Long taxDeclareRecordId;
|
||||
|
||||
/**
|
||||
* 人员类型
|
||||
*/
|
||||
private Integer employeeType;
|
||||
|
||||
/**
|
||||
* 人员id
|
||||
*/
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 薪资核算结果
|
||||
*/
|
||||
private Map<String, String> resultValue;
|
||||
|
||||
/**
|
||||
* 薪资核算结果(只在加密解密中使用)
|
||||
*/
|
||||
private String resultValueJson;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 个税申报中的人员
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/10 4:03 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class TaxDeclareEmployeePO {
|
||||
|
||||
@ApiModelProperty("人员id")
|
||||
private Long employeeId;
|
||||
|
||||
@ApiModelProperty("人员类型")
|
||||
private Integer employeeType;
|
||||
}
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import com.engine.salary.report.enums.IncomeCategoryEnum;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @description: 个税申报失败数据
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/30 11:38 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
//hrsa_tax_declare_fail")
|
||||
public class TaxDeclareFailPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -7908151391741544058L;
|
||||
|
||||
private Long id;
|
||||
|
||||
private Long taxDeclareRecordId;
|
||||
|
||||
/**
|
||||
* @see IncomeCategoryEnum
|
||||
*/
|
||||
//所得项目")
|
||||
private String incomeCategory;
|
||||
|
||||
//姓名")
|
||||
private String employeeName;
|
||||
|
||||
//证件号码")
|
||||
private String cardNum;
|
||||
|
||||
//失败原因")
|
||||
private String errorMsg;
|
||||
|
||||
//租户key", ignore = true)
|
||||
private String tenantKey;
|
||||
|
||||
//创建人id", ignore = true)
|
||||
private Long creator;
|
||||
|
||||
//是否删除", ignore = true)
|
||||
private Integer deleteType;
|
||||
|
||||
//创建时间", ignore = true)
|
||||
private Date createTime;
|
||||
|
||||
//更新时间", ignore = true)
|
||||
private Date updateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,111 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @description: 个税申报
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/2 5:40 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
//hrsa_tax_declare_record")
|
||||
//个税申报记录")
|
||||
public class TaxDeclareRecordPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -1891927328401341853L;
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
//主键id")
|
||||
private Long id;
|
||||
/**
|
||||
* 个税扣缴义务人id
|
||||
*/
|
||||
//个税扣缴义务人")
|
||||
private Long taxAgentId;
|
||||
/**
|
||||
* 薪资所属月
|
||||
*/
|
||||
//薪资所属月")
|
||||
private String salaryMonth;
|
||||
/**
|
||||
* 税款所属期
|
||||
*/
|
||||
//税款所属期")
|
||||
private String taxCycle;
|
||||
/**
|
||||
* 申报类型
|
||||
*/
|
||||
//申报类型")
|
||||
private Integer taxDeclareType;
|
||||
/**
|
||||
* 申报状态
|
||||
*/
|
||||
//申报状态")
|
||||
private Integer taxDeclareStatus;
|
||||
/**
|
||||
* 申报失败的错误信息
|
||||
*/
|
||||
//申报失败的错误信息")
|
||||
private String taxDeclareErrorMsg;
|
||||
/**
|
||||
* 请求的requestId
|
||||
*/
|
||||
//请求的requestId")
|
||||
private String requestId;
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
//备注")
|
||||
private String remark;
|
||||
|
||||
//应缴金额")
|
||||
private String taxPayAmount;
|
||||
|
||||
//实缴总额")
|
||||
private String taxPaidAmount;
|
||||
|
||||
//实缴税额(不含滞纳金等)")
|
||||
private String taxPurePaidAmount;
|
||||
|
||||
//申报人数")
|
||||
private Integer personNum;
|
||||
|
||||
/**
|
||||
* 个税申报表的待刷新数据的标识
|
||||
*/
|
||||
//个税申报表的待刷新数据的标识")
|
||||
private Integer displayUpdateIcon;
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
//租户key", ignore = true)
|
||||
private String tenantKey;
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
//创建人id", ignore = true)
|
||||
private Long creator;
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
//是否删除", ignore = true)
|
||||
private Integer deleteType;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
//创建时间", ignore = true)
|
||||
private LocalDateTime createTime;
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
//更新时间", ignore = true)
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
package com.engine.salary.entity.taxdeclaration.po;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @description: 个税申报表表头
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/28 5:28 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
//name = "个税申报表表头")
|
||||
//hrsa_tax_report_column")
|
||||
public class TaxReportColumnPO {
|
||||
|
||||
//name = "主键id")
|
||||
private Long id;
|
||||
//name = "报表类型")
|
||||
private String taxReportType;
|
||||
//name = "所得项目")
|
||||
private String incomeCategory;
|
||||
//name = "申报表的列名")
|
||||
private String reportColumnName;
|
||||
//name = "申报表的列名多语言标签")
|
||||
private Integer reportColumnLabel;
|
||||
//name = "申报表的列索引")
|
||||
private String reportColumnDataIndex;
|
||||
//name = "数值类型")
|
||||
private String dataType;
|
||||
//name = "个税对接时的参数key")
|
||||
private String requestParamKey;
|
||||
//name = "租户key", ignore = true)
|
||||
private String tenantKey;
|
||||
//name = "创建人id", ignore = true)
|
||||
private Long creator;
|
||||
//name = "是否删除", ignore = true)
|
||||
private Integer deleteType;
|
||||
//name = "创建时间", ignore = true)
|
||||
private LocalDateTime createTime;
|
||||
//name = "更新时间", ignore = true)
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.engine.salary.entity.taxdeclaration.response;
|
||||
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: 作废申报的反馈
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/3 11:32 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class CancelDeclareFeedbackResponse {
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private SzyhResponseHead head;
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private Map<String, Object> body;
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
package com.engine.salary.entity.taxdeclaration.response;
|
||||
|
||||
import com.engine.salary.common.taxdeclare.AsyncRequestIdDTO;
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 作废申报的返回数据
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/3 11:17 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class CancelDeclareResponse {
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private SzyhResponseHead head;
|
||||
|
||||
@ApiModelProperty("接口数据")
|
||||
private AsyncRequestIdDTO body;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.engine.salary.entity.taxdeclaration.response;
|
||||
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: 申报个税的反馈
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/3 11:32 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class DeclareTaxFeedbackResponse {
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private SzyhResponseHead head;
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private Map<String, Object> body;
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
package com.engine.salary.entity.taxdeclaration.response;
|
||||
|
||||
import com.engine.salary.common.taxdeclare.AsyncRequestIdDTO;
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 个税申报的返回数据
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/11/3 11:17 AM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
public class DeclareTaxResponse {
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private SzyhResponseHead head;
|
||||
|
||||
@ApiModelProperty("接口数据")
|
||||
private AsyncRequestIdDTO body;
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package com.engine.salary.entity.taxdeclaration.response;
|
||||
|
||||
import com.engine.salary.entity.taxagent.response.SzyhResponseHead;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 更正申报的返回数据
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 2022/12/15 2:45 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
@Data
|
||||
@ApiModel("更正申报的返回数据")
|
||||
public class UpdateDeclareResponse {
|
||||
|
||||
@ApiModelProperty("接口状态")
|
||||
private SzyhResponseHead head;
|
||||
}
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
package com.engine.salary.entity.taxpayment.dto;
|
||||
|
||||
import com.weaver.common.component.form.WeaForm;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
|
|
@ -22,7 +21,7 @@ import java.util.Map;
|
|||
@ApiModel("查询缴费信息")
|
||||
public class TaxAgreementFormDTO extends TaxFeedbackResultDTO {
|
||||
|
||||
private WeaForm form;
|
||||
// private WeaForm form;
|
||||
|
||||
private Map<String, String> count;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,58 +1,58 @@
|
|||
package com.engine.salary.entity.taxpayment.dto;
|
||||
|
||||
import com.weaver.common.component.form.item.WeaFormItemType;
|
||||
import com.weaver.hrm.salary.annotation.SalaryForm;
|
||||
import com.weaver.hrm.salary.annotation.SalaryFormItem;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 查询缴费信息
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-12-27 13:25:42
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("查询缴费信息")
|
||||
public class TaxAmountFormDTO {
|
||||
|
||||
@SalaryForm(
|
||||
label = "个税扣缴义务人",
|
||||
labelId = 86184,
|
||||
labelSpan = 8,
|
||||
items = {
|
||||
@SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "50", readOnly = true)
|
||||
}
|
||||
)
|
||||
@ApiModelProperty("个税扣缴义务人")
|
||||
private String taxAgent;
|
||||
|
||||
@SalaryForm(
|
||||
label = "应缴金额",
|
||||
labelId = 175126,
|
||||
labelSpan = 8,
|
||||
items = {
|
||||
@SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "50", readOnly = true)
|
||||
}
|
||||
)
|
||||
@ApiModelProperty("应缴金额")
|
||||
private String amount;
|
||||
|
||||
@SalaryForm(
|
||||
label = "申报人数",
|
||||
labelId = 175128,
|
||||
labelSpan = 8,
|
||||
items = {
|
||||
@SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "50", readOnly = true)
|
||||
}
|
||||
)
|
||||
@ApiModelProperty("申报人数")
|
||||
private String personNum;
|
||||
}
|
||||
//package com.engine.salary.entity.taxpayment.dto;
|
||||
//
|
||||
//import com.weaver.common.component.form.item.WeaFormItemType;
|
||||
//import com.weaver.hrm.salary.annotation.SalaryForm;
|
||||
//import com.weaver.hrm.salary.annotation.SalaryFormItem;
|
||||
//import io.swagger.annotations.ApiModel;
|
||||
//import io.swagger.annotations.ApiModelProperty;
|
||||
//import lombok.AllArgsConstructor;
|
||||
//import lombok.Builder;
|
||||
//import lombok.Data;
|
||||
//import lombok.NoArgsConstructor;
|
||||
//
|
||||
///**
|
||||
// * 查询缴费信息
|
||||
// *
|
||||
// * @author chengliming
|
||||
// * @date 2022-12-27 13:25:42
|
||||
// */
|
||||
//@Data
|
||||
//@Builder
|
||||
//@NoArgsConstructor
|
||||
//@AllArgsConstructor
|
||||
//@ApiModel("查询缴费信息")
|
||||
//public class TaxAmountFormDTO {
|
||||
//
|
||||
// @SalaryForm(
|
||||
// label = "个税扣缴义务人",
|
||||
// labelId = 86184,
|
||||
// labelSpan = 8,
|
||||
// items = {
|
||||
// @SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "50", readOnly = true)
|
||||
// }
|
||||
// )
|
||||
// @ApiModelProperty("个税扣缴义务人")
|
||||
// private String taxAgent;
|
||||
//
|
||||
// @SalaryForm(
|
||||
// label = "应缴金额",
|
||||
// labelId = 175126,
|
||||
// labelSpan = 8,
|
||||
// items = {
|
||||
// @SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "50", readOnly = true)
|
||||
// }
|
||||
// )
|
||||
// @ApiModelProperty("应缴金额")
|
||||
// private String amount;
|
||||
//
|
||||
// @SalaryForm(
|
||||
// label = "申报人数",
|
||||
// labelId = 175128,
|
||||
// labelSpan = 8,
|
||||
// items = {
|
||||
// @SalaryFormItem(itemType = WeaFormItemType.INPUT, maxLength = "50", readOnly = true)
|
||||
// }
|
||||
// )
|
||||
// @ApiModelProperty("申报人数")
|
||||
// private String personNum;
|
||||
//}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
package com.engine.salary.entity.taxpayment.dto;
|
||||
|
||||
import com.weaver.common.component.form.item.WeaFormItemType;
|
||||
import com.weaver.hrm.salary.annotation.SalaryForm;
|
||||
import com.weaver.hrm.salary.annotation.SalaryFormItem;
|
||||
import com.weaver.hrm.salary.enums.taxdeclaration.TaxPaymentTypeEnum;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
|
@ -24,14 +20,6 @@ import lombok.NoArgsConstructor;
|
|||
@ApiModel("查询缴费信息")
|
||||
public class TaxPayTypeFormDTO {
|
||||
|
||||
@SalaryForm(
|
||||
label = "缴款方式",
|
||||
labelId = 175127,
|
||||
labelSpan = 8,
|
||||
items = {
|
||||
@SalaryFormItem(itemType = WeaFormItemType.RADIO, required = true, optionsEnum = TaxPaymentTypeEnum.class)
|
||||
}
|
||||
)
|
||||
@ApiModelProperty("缴款方式")
|
||||
private String type;
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import java.util.List;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("查询缴费凭证")
|
||||
public class TaxWithholdingVoucherFeedbackDTO extends TaxFeedbackResultDTO{
|
||||
public class TaxWithholdingVoucherFeedbackDTO extends TaxFeedbackResultDTO {
|
||||
/**
|
||||
* 申报类型代码
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package com.engine.salary.entity.taxpayment.param;
|
||||
|
||||
import com.weaver.hrm.salary.enums.taxdeclaration.TaxPaymentServiceTypeEnum;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
|
@ -31,7 +30,7 @@ public class TaxPaymentQueryParam {
|
|||
private Long taxDeclareRecordId;
|
||||
|
||||
/**
|
||||
* @see TaxPaymentServiceTypeEnum
|
||||
* TaxPaymentServiceTypeEnum
|
||||
*/
|
||||
@ApiModelProperty("业务类型")
|
||||
private Integer type;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
package com.engine.salary.entity.taxpayment.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.weaver.common.elog.annotation.ElogTransform;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -21,85 +19,85 @@ import java.time.LocalDateTime;
|
|||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@TableName("hrsa_tax_payment_request")
|
||||
@ElogTransform(name = "个税辅助缴款-请求信息")
|
||||
//hrsa_tax_payment_request")
|
||||
//个税辅助缴款-请求信息")
|
||||
public class TaxPaymentRequestPO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -203732044881927518L;
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ElogTransform(name = "主键id")
|
||||
//主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人的主键id
|
||||
*/
|
||||
@ElogTransform(name = "个税扣缴义务人的主键id")
|
||||
//个税扣缴义务人的主键id")
|
||||
private Long taxAgentId;
|
||||
|
||||
/**
|
||||
* 个税申报记录ID
|
||||
*/
|
||||
@ElogTransform(name = "个税申报记录id")
|
||||
//个税申报记录id")
|
||||
private Long taxDeclareRecordId;
|
||||
|
||||
/**
|
||||
* 税款所属期
|
||||
*/
|
||||
@ElogTransform(name = "税款所属期")
|
||||
//税款所属期")
|
||||
private LocalDate taxYearMonth;
|
||||
|
||||
/**
|
||||
* 异步请求ID
|
||||
*/
|
||||
@ElogTransform(name = "异步请求ID")
|
||||
//异步请求ID")
|
||||
private String requestId;
|
||||
|
||||
|
||||
/**
|
||||
* 请求类型
|
||||
*
|
||||
* @see com.weaver.hrm.salary.enums.taxdeclaration.TaxPaymentServiceTypeEnum
|
||||
* com.weaver.hrm.salary.enums.taxdeclaration.TaxPaymentServiceTypeEnum
|
||||
*/
|
||||
@ElogTransform(name = "异步请求ID")
|
||||
//异步请求ID")
|
||||
private Integer requestType;
|
||||
|
||||
/**
|
||||
* 是否已获取反馈
|
||||
*
|
||||
* @see com.weaver.hrm.salary.enums.salaryitem.SalaryOnOffEnum
|
||||
* com.weaver.hrm.salary.enums.salaryitem.SalaryOnOffEnum
|
||||
*/
|
||||
@ElogTransform(name = "是否已获取反馈")
|
||||
//是否已获取反馈")
|
||||
private Integer feedback;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@ElogTransform(name = "租户key", ignore = true)
|
||||
//租户key", ignore = true)
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ElogTransform(name = "创建人id", ignore = true)
|
||||
//创建人id", ignore = true)
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@ElogTransform(name = "是否删除", ignore = true)
|
||||
//是否删除", ignore = true)
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform(name = "创建时间", ignore = true)
|
||||
//创建时间", ignore = true)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform(name = "更新时间", ignore = true)
|
||||
//更新时间", ignore = true)
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.engine.salary.enums;
|
||||
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @description: 是、否
|
||||
|
|
@ -40,4 +41,14 @@ public enum SalaryOnOffEnum implements BaseEnum<Integer> {
|
|||
public Integer getLabelId() {
|
||||
return labelId;
|
||||
}
|
||||
|
||||
public static SalaryOnOffEnum parseByValue(int value) {
|
||||
for (SalaryOnOffEnum onOffEnum : SalaryOnOffEnum.values()) {
|
||||
if (Objects.equals(onOffEnum.getValue(), value)) {
|
||||
return onOffEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,51 @@
|
|||
package com.engine.salary.enums.taxagent;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* 个人扣缴义务人-报税信息-验证类型
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-08-31 10:51:19
|
||||
*/
|
||||
public enum TaxAgentTaxReturnCheckTypeEnum {
|
||||
|
||||
/**
|
||||
* 报税信息验证
|
||||
*/
|
||||
MAIN_CHECK(1, "报税信息验证"),
|
||||
/**
|
||||
* 登记序号+税号验证
|
||||
*/
|
||||
REGISTRATION_CHECK(2, "登记序号+税号验证"),
|
||||
/**
|
||||
* 部门编码验证
|
||||
*/
|
||||
DEPARTMENT_CHECK(3, "部门编码验证");
|
||||
|
||||
private final int value;
|
||||
|
||||
private final String defaultLabel;
|
||||
|
||||
TaxAgentTaxReturnCheckTypeEnum(int value, String defaultLabel) {
|
||||
this.value = value;
|
||||
this.defaultLabel = defaultLabel;
|
||||
}
|
||||
|
||||
public Integer getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public String getDefaultLabel() {
|
||||
return defaultLabel;
|
||||
}
|
||||
|
||||
public static TaxAgentTaxReturnCheckTypeEnum parseByValue(int value) {
|
||||
for (TaxAgentTaxReturnCheckTypeEnum typeEnum : TaxAgentTaxReturnCheckTypeEnum.values()) {
|
||||
if (Objects.equals(typeEnum.getValue(), value)) {
|
||||
return typeEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
package com.engine.salary.enums.taxagent;
|
||||
|
||||
import com.engine.salary.enums.BaseEnum;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* 个人扣缴义务人-报税信息-密码校验类型
|
||||
*
|
||||
* @author chengliming
|
||||
* @date 2022-08-31 10:51:19
|
||||
*/
|
||||
public enum TaxAgentTaxReturnPasswordTypeEnum implements BaseEnum<Integer> {
|
||||
|
||||
/**
|
||||
* 个税网报密码
|
||||
*/
|
||||
TAX_NET_PASSWORD(0, "个税网报密码", 144391),
|
||||
/**
|
||||
* 实名账号密码
|
||||
*/
|
||||
REAL_NAME_PASSWORD(2, "实名账号密码", 144392);
|
||||
|
||||
private final int value;
|
||||
|
||||
private final String defaultLabel;
|
||||
|
||||
private final int labelId;
|
||||
|
||||
TaxAgentTaxReturnPasswordTypeEnum(int value, String defaultLabel, int labelId) {
|
||||
this.value = value;
|
||||
this.defaultLabel = defaultLabel;
|
||||
this.labelId = labelId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDefaultLabel() {
|
||||
return defaultLabel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getLabelId() {
|
||||
return labelId;
|
||||
}
|
||||
|
||||
public static TaxAgentTaxReturnPasswordTypeEnum parseByValue(int value) {
|
||||
for (TaxAgentTaxReturnPasswordTypeEnum typeEnum : TaxAgentTaxReturnPasswordTypeEnum.values()) {
|
||||
if (Objects.equals(typeEnum.getValue(), value)) {
|
||||
return typeEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue