diff --git a/src/com/engine/organization/annotation/OrganizationFormulaVar.java b/src/com/engine/organization/annotation/OrganizationFormulaVar.java
new file mode 100644
index 00000000..95b4063e
--- /dev/null
+++ b/src/com/engine/organization/annotation/OrganizationFormulaVar.java
@@ -0,0 +1,27 @@
+package com.engine.organization.annotation;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * 薪资公式计算器-变量
+ *
Copyright: Copyright (c) 2022
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@Target({ElementType.FIELD})
+@Retention(RetentionPolicy.RUNTIME)
+public @interface OrganizationFormulaVar {
+
+ int labelId();
+
+ String defaultLabel();
+
+ String dataType();
+
+ String fieldId() default "";
+}
diff --git a/src/com/engine/organization/annotation/OrganizationTable.java b/src/com/engine/organization/annotation/OrganizationTable.java
new file mode 100644
index 00000000..e5f89e50
--- /dev/null
+++ b/src/com/engine/organization/annotation/OrganizationTable.java
@@ -0,0 +1,69 @@
+package com.engine.organization.annotation;
+
+
+import com.cloudstore.eccom.pc.table.WeaTableType;
+
+import java.lang.annotation.*;
+
+/**
+ * 数据列表
+ * Copyright: Copyright (c) 2022
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@Target({ElementType.TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+public @interface OrganizationTable {
+
+ String pageId() default "";
+
+ /**
+ * 数据库字段,以','分割,例如:"id, name, description"
+ */
+ String fields() default "";
+
+ /**
+ * 表名 ,例如:"FROM hrsa_tax_agent"
+ */
+ String fromSql() default "";
+
+ /**
+ * 条件
+ */
+ String where() default "";
+
+ /**
+ * 分组
+ */
+ String groupby() default "";
+
+
+ /**
+ * 排序
+ */
+ String orderby() default "";
+
+ /**
+ * 主键
+ */
+ String primarykey() default "";
+
+ /**
+ * 去重
+ */
+ boolean distinct() default false;
+
+ /**
+ * 操作按钮
+ */
+ OrganizationTableOperate[] operates() default {};
+
+ /**
+ * 列表选择框
+ */
+ WeaTableType tableType() default WeaTableType.NONE;
+
+}
diff --git a/src/com/engine/organization/annotation/OrganizationTableColumn.java b/src/com/engine/organization/annotation/OrganizationTableColumn.java
new file mode 100644
index 00000000..ea73ce9d
--- /dev/null
+++ b/src/com/engine/organization/annotation/OrganizationTableColumn.java
@@ -0,0 +1,34 @@
+package com.engine.organization.annotation;
+
+import java.lang.annotation.*;
+
+/**
+ * 数据列表表头
+ * Copyright: Copyright (c) 2022
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@Target({ElementType.FIELD})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+public @interface OrganizationTableColumn {
+
+ String text() default "";
+
+ int labelId() default -1;
+
+ String width() default "";
+
+ String column() default "";
+
+ boolean display() default true;
+
+ String orderkey() default "";
+
+ String transmethod() default "";
+
+ // 额外参数
+ String otherPara() default "";
+}
diff --git a/src/com/engine/organization/annotation/OrganizationTableOperate.java b/src/com/engine/organization/annotation/OrganizationTableOperate.java
new file mode 100644
index 00000000..38a2ea36
--- /dev/null
+++ b/src/com/engine/organization/annotation/OrganizationTableOperate.java
@@ -0,0 +1,27 @@
+package com.engine.organization.annotation;
+
+import java.lang.annotation.*;
+
+/**
+ * 列表操作按钮
+ * Copyright: Copyright (c) 2022
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@Target({ElementType.ANNOTATION_TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+public @interface OrganizationTableOperate {
+
+ String text() default "";
+
+ int labelId() default -1;
+
+ String href() default "";
+
+ String index() default "0";
+
+
+}
diff --git a/src/com/engine/organization/annotation/TableTitle.java b/src/com/engine/organization/annotation/TableTitle.java
new file mode 100644
index 00000000..22893a1a
--- /dev/null
+++ b/src/com/engine/organization/annotation/TableTitle.java
@@ -0,0 +1,14 @@
+package com.engine.organization.annotation;
+
+import java.lang.annotation.*;
+
+
+@Target({ElementType.FIELD})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+public @interface TableTitle {
+ String title();
+ String dataIndex();
+ String key();
+ boolean display() default true;
+}
diff --git a/src/com/engine/organization/biz/SchemeBiz.java b/src/com/engine/organization/biz/SchemeBiz.java
new file mode 100644
index 00000000..6316c28d
--- /dev/null
+++ b/src/com/engine/organization/biz/SchemeBiz.java
@@ -0,0 +1,16 @@
+package com.engine.organization.biz;
+
+import com.engine.organization.entity.scheme.param.SchemeSearchParam;
+import com.engine.organization.entity.scheme.po.SchemePO;
+import com.engine.organization.mapper.scheme.SchemeMapper;
+import com.engine.organization.util.page.PageInfo;
+import com.engine.organization.util.page.PageUtil;
+import org.apache.ibatis.session.SqlSession;
+import weaver.conn.mybatis.MyBatisFactory;
+
+import java.util.List;
+
+public class SchemeBiz {
+
+
+}
diff --git a/src/com/engine/organization/cmd/scheme/SchemeListCmd.java b/src/com/engine/organization/cmd/scheme/SchemeListCmd.java
new file mode 100644
index 00000000..0acfd9ce
--- /dev/null
+++ b/src/com/engine/organization/cmd/scheme/SchemeListCmd.java
@@ -0,0 +1,62 @@
+package com.engine.organization.cmd.scheme;
+
+import com.alibaba.fastjson.JSON;
+import com.cloudstore.eccom.result.WeaResultMsg;
+import com.engine.common.biz.AbstractCommonCommand;
+import com.engine.common.entity.BizLogContext;
+import com.engine.core.interceptor.CommandContext;
+import com.engine.organization.component.OrganizationWeaTable;
+import com.engine.organization.entity.scheme.vo.SchemeTableVO;
+import com.engine.organization.util.db.DBType;
+import org.apache.commons.lang3.StringUtils;
+import weaver.conn.RecordSet;
+import weaver.hrm.User;
+
+import java.util.Map;
+
+/**
+ *查询职等职级列表
+ */
+public class SchemeListCmd extends AbstractCommonCommand