20250811发版

This commit is contained in:
ibizdev
2025-08-12 10:44:50 +08:00
parent b93e7fca7e
commit 46fefe655a
8781 changed files with 1521161 additions and 2868 deletions

166
README.md Normal file
View File

@@ -0,0 +1,166 @@
# 🚀 欢迎来到 iBizCRM
**现代化、企业级、开源 CRM 系统**,基于 [iBizModeling](https://modeling.ibizlab.cn/) 建模开发平台打造,来自 [iBizLab 开源实验室](https://www.ibizlab.cn/) 的又一开源力作。在用户体验、功能深度与业务自动化方面,iBizCRM 借鉴了卓豪 Zoho CRM 的优秀理念,提供强大又灵活的客户关系管理能力。
💡 **本地部署 · 数据安全可控 · 高度可定制**
---
## 🌐 在线体验
- **官方网站**: [https://crm.ibizlab.cn](https://crm.ibizlab.cn)
- **Demo 地址**:[https://crm.ibizlab.cn/demo/](https://crm.ibizlab.cn/demo/)
- **用户名 / 密码**:`demo_admin / 123456`
- **技术资料**: [https://crm.ibizlab.cn/doc/](https://crm.ibizlab.cn/doc/)
- **ModelingIDE** [https://crm.ibizlab.cn/modeling/](https://crm.ibizlab.cn/modeling/)
- **前端技术框架支持** [https://open.ibizlab.cn/apphub/](https://open.ibizlab.cn/apphub/)
---
## ✨ 为什么选择 iBizCRM?
- **开源自由** — 完全免费,可修改、分发,自主掌控源代码。
- **本地部署** — 非云端架构,商业数据安全可控,无需依赖封闭生态。
- **功能强大** — 借鉴 Zoho CRM 成熟经验,满足中小企业全流程业务需求。
- **灵活定制** — 模块、布局、工作流均可深度定制,贴合业务场景。
- **社区驱动** — 欢迎参与贡献,让 iBizCRM 与你一同成长。
---
## 🛠 核心功能
### 1. 主页工作台
- **标准工作台**:预设高效业务总览视图。
### 2. 客户关系管理
- **线索(Leads)**:多视图筛选、附件管理、活动跟踪、产品关联。
- **联系人(Contacts)**:多视图筛选、附件管理、活动记录。
- **客户(Accounts)**:联系人、商机、活动、销售人员信息关联管理。
### 3. 销售自动化
- **商机(Deals)**:阶段历史、活动、任务、产品信息全追踪。
### 4. 服务与支持
- **任务管理**:任务视图、详情查看。
- **文档管理**:集中化文件存储与管理。
### 5. 财务管理
- **订单收款计划**:制定收款计划并跟踪执行。
- **收款分析**:收款记录统计与分析。
- **产品管理**:统一管理产品数据。
### 6. 数据分析与报告
- **报表中心**:多维度报表生成与导出。
### 7. 系统管理
- 常规设置 & 安全控制,全面可控。
---
## ⚡ 快速上手
### 环境要求
- **CPU**:≥ 4 核
- **RAM**:≥ 16 GB
- **Disk**:≥ 50 GB
- **Docker**:≥ 24.0.0
- **Docker Compose**:≥ v2.26.1
### 安装步骤
1. **克隆项目**
```bash
git clone https://gitee.com/ibizlab/crm.git
#### **1\. 前置条件**
- CPU >= 4 核
- RAM >= 16 GB
- Disk >= 50 GB
- Docker >= 24.0.0 & Docker Compose >= v2.26.1
#### **2\. 安装指南**
克隆项目仓库
```bash
git clone https://gitee.com/ibizlab/crm.git
```
进入 **compose** 文件夹,利用提前编译好的 Docker 镜像启动服务器:
```bash
$ cd crm/deploy/compose
$ docker compose -f docker-compose.yml --env-file .env up -d
# ARM64架构启动:
# docker-compose -f docker-compose-arm64.yml --env-file .env up -d
```
> [!TIP]
> 如果你想修改MySQL、ZooKeeper、Redis、Nacos、EMQX、ebsx服务为本地已有服务,可以在 **deploy/compose/.env** 文件内根据变量注释提示调整对应参数;调整MySQL服务为本地服务需要预先导入deploy/compose/init.sql。
> [!CAUTION]
> 如果你已经安装过iBizLab的其他开源产品,比如iBizPLM,这种情况下MySQL、zk、Nacos、ebsx等环境已具备,可以使用 .share 启动,执行前请自行在mysql中创建crm数据库。
> ```
> create database crm default character set utf8 collate utf8_general_ci;
> create user 'crm'@'%' identified by 'crm@2024';
> grant ALL PRIVILEGES on crm.* to 'crm'@'%' ;
> ```
> ```bash
> $ cd crm/deploy/compose
> $ docker compose -f docker-compose.yml --env-file .share up -d
> # ARM64架构启动:
> # docker-compose -f docker-compose-arm64.yml --env-file .share up -d
> ```
## 📸 演示图
![img](doc/images/0.png)
![img](doc/images/1.png)
![img](doc/images/2.png)
![img](doc/images/3.png)
![img](doc/images/4.png)
![img](doc/images/5.png)
![img](doc/images/6.png)
![img](doc/images/7.png)
![img](doc/images/8.png)
![img](doc/images/9.png)
## 🤝 如何贡献
我们非常欢迎社区的贡献!如果您有兴趣,请通过以下方式参与:
* **报告 Bug**:如果您发现了任何问题,请通过 GITEE Issues提交。
* **提交建议**:欢迎提出任何关于新功能或改进的建议。
* **提交代码**:请遵循我们的贡献指南,提交 Pull Request。
## 📜 许可证
iBizCRM 采用 **MIT License** 许可证。详情请参阅项目根目录下的 LICENSE 文件。
## ❤️ 加入我们
我们致力于为中小企业提供一个功能强大、灵活可定制且完全开源的解决方案,帮助您高效管理销售、营销和客户服务,从而建立和维护牢固的客户关系。
感谢您对 iBizCRM 的关注!让我们一起打造最棒的开源CRM系统吧!
- 🌐 开源实验室官网:https://www.ibizlab.cn
- 💬 开源社区:https://open.ibizlab.cn
- 📱 微信公众号:iBiz开放平台
- 💬 QQ交流群:1067434627

19
backend/.gitignore vendored Normal file
View File

@@ -0,0 +1,19 @@
*volumes
target
.settings
*node_modules
*dist
*bin
*.project
*.classpath
*.factorypath
.history
.vscode
.idea
**.iml
*.jar
*.log
.model
.DS_Store
*mysql_data
*rt_data

201
backend/README.md Normal file
View File

@@ -0,0 +1,201 @@
# 🌀 iBizcrm Groovy 架构项目说明
## 项目背景
采用 Groovy 语言,将传统的 Controller/Service/Repository 模板演变为每个实体对应一个 Groovy 控制类,发布 DTO 与 Runtime 控制逻辑,底层基于以SpringBoot/SpringCloud为内核 [ibiz-service-runner](https://gitee.com/ibizlab-cloud/ibiz-service-runner) 引擎,该引擎来自 iBizLab 技术中台,支持全动态解释执行与插件化扩展。
通过引入 Groovy 动态语言特性,结合 `ibiz-service-runner` 动态执行引擎,极大简化了代码结构,提高了开发效率与可维护性。同时解决了 service-runner 不便调试的问题。
📢 📢 [介绍视频](https://www.bilibili.com/video/BV1sCoNYMEeV) 📢 📢
![img](../doc/images/crmdeploy.jpg)
## 架构说明
### ✅ 动态控制器生成
每个实体对应一个 Groovy 控制类,无需传统 Controller/Service/Repository 分层样板代码。例如:
包路径:
```
cn.ibizlab.crm.prodmgmt.product
├── Product ← 实体控制器(Groovy类)
└── dto/
├── ProductDTO ← 数据传输对象
└── ProductFilterDTO ← 查询过滤对象
```
### ✅ DTO 简洁链式调用
```groovy
@Test
void testSave() {
ProductDTO dto = Product.getInstance().entity()
.setId("test1")
.setName("test1产品")
.setIdentifier("0000")
.setScopeType("organization")
.setVisibility("public")
.setMembers([
new ProductMemberDTO()
.setUserId("demo_admin")
.setName("管理员")
.setRoleId("admin")
])
.save() as ProductDTO
println dto
}
```
### ✅ 动态获取与查询示例
```groovy
@Test
void testGet() {
ProductDTO dto = Product.getInstance().get("test1", true)
if (!dto) {
dto = Product.getInstance().create(new ProductDTO()
.setId("test1")
.setName("test1产品")
.setIdentifier("0000")
.setScopeType("organization")
.setVisibility("public")
.setMembers([
new ProductMemberDTO().setUserId("demo_admin").setName("管理员").setRoleId("admin")
]))
println "未命中,创建新数据: ${dto}"
} else {
println "命中: ${dto}"
}
}
```
```groovy
@Test
void testFetchDefault() {
Page<ProductDTO> page = Product.getInstance()
.fetchDefault(new ProductFilterDTO().sort("create_time,desc"))
println "共${page.totalPages}页,${page.totalElements}行"
// 简写方式
page = Product.getInstance().filter().sort("create_time,desc").fetch()
page.content.each { println it }
}
```
## 本地IDEA
### 启动依赖项目
可通过 docker-compose 启动当前项目运行所需的 mysql、nacos、redis 等基础服务,详见[Install](https://gitee.com/ibizlab/crm/tree/main/deploy/compose)。
### 修改调试依赖服务域名解析地址
依赖服务均在docker网络内运行,为了本机调试时转接依赖地址,需要修改本机host域名解析,Linux或MacOS修改 /etc/hosts,Windows修改C:\Windows\System32\drivers\etc\hosts
- 将 nacos 中实例注册的短域名映射成依赖服务ip地址如:10.144.0.1
```
sudo vi /etc/hosts
```
```
# nacos 映射
10.144.0.1 nacos
# redis 映射
10.144.0.1 redis
# 数据库 映射
10.144.0.1 mysql
# zookepr 映射
10.144.0.1 zoo1
# ibizlab-cloud云服务 映射
10.144.0.1 ibiz-ebsx-allinone
# 认证微服务 映射
10.144.0.1 ibizlab-uaa-api
# emqx 消息服务 映射
10.144.0.1 emqx
```
10.144.0.1 nacos
### 克隆此仓库
```
git clone https://gitee.com/ibizlab/crm-code.git
```
### 调试启动
环境要求:jdk === 1.8
```
mvn package -Pruntime
```
#编译器中 Run 或 Debug
`crm-provider/src/main/java/cn/ibizlab/crm/RuntimeApplication.java`
出现以下界面提示说明服务器启动成功:
```
[DEBUG] n.i.central.cloud.core.ServiceHubBase : 系统[ibizcrm]已经注册
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Heap Memory Usage:
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Init: 786432000
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Used: 1489565680
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Committed: 4904714240
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Max: 11169955840
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Non-Heap Memory Usage:
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Init: 2555904
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Used: 222739928
[DEBUG] n.i.central.cloud.core.ServiceHubBase : Committed: 231342080
```
### Nacos实例替代
启动依赖环境时,集群中已经注册有docker中启动的crmservice实例,因此我们将会看到有两个实例注册,调试服务请手工下线docker中的实例,以调试启动的实例承接网关的转发。
### 断点调试
正常访问iBizcrm的前端页面地址,本机启动的服务会正常接收到断点。
---
## 动态执行引擎:`ibiz-service-runner`
`ibiz-service-runner` 是基于 **iBiz 技术中台** 的全动态解释型业务引擎,具备以下核心能力:
### 🌐 全动态解释执行
- 实时解析模型文件,自动生成数据库表结构、API 接口、服务逻辑与前端 Schema。
- 支持模型热更新,无需重启服务即刻生效。
### 🧩 插件化能力扩展
- 支持通过 `ibiz-plugin` 动态加载持久化、消息队列、AI 模块等能力。
- 可通过 `ibiz-plugin-extension` 进行二次扩展与规则控制。
### ☁️ 云原生集成
- 对接 `ibiz-cloud` 中台:认证、配置中心、流程引擎。
- 内建 SaaS 多租户支持,自动处理租户隔离和资源管理。
### 🏢 企业级扩展能力
- 兼容私有协议、DevOps 流程等企业定制需求。
- 支持“云管端”混合部署模式,适配企业级部署策略。
---
## 总结
通过本次 Groovy 化改造,你可以:
- 💡 用更少的代码完成更强的业务控制逻辑;
- 🔍 更轻松地调试和运行 `ibiz-service-runner`;
- 🚀 快速上线基于模型的动态系统。

23
backend/crm-core/pom.xml Normal file
View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>crm</artifactId>
<groupId>cn.ibizlab.crm</groupId>
<version>1.0.0.0</version>
</parent>
<artifactId>crm-core</artifactId>
<name>crm core</name>
<description>crm core</description>
<dependencies>
<dependency>
<groupId>cn.ibizlab.crm</groupId>
<artifactId>crm-util</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,262 @@
package cn.ibizlab.crm.crm.account
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.account.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[ACCOUNT]运行时对象
* 此代码用户功能扩展代码
*
*/
class Account extends GroovyDataEntityRuntime<Account,AccountDTO,AccountFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_FIND_ACCOUNT = "find_account"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String ACTION_MERGE_ACCOUNT = "merge_account"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_ASSIGNED = "assigned"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_CURRENT = "current"
public static final String DATASET_NOT_CURRENT = "not_current"
public static final String DATASET_OWNER = "owner"
public static final String DATASET_TARGET_RELATION = "target_relation"
private static Account _instance
void setInstance(Account instance) {
_instance = instance
}
static Account getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
AccountDTO create(AccountDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, AccountDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
AccountDTO update(AccountDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, AccountDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
AccountDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, AccountDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
AccountDTO getDraft(AccountDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, AccountDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(AccountDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
AccountDTO save(AccountDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, AccountDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(AccountDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, AccountDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(AccountDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, AccountDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(AccountDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, AccountDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(AccountDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, AccountDTO.class)
}
/**
* 行为:通过id查询客户信息 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_FIND_ACCOUNT)
def findAccount(AccountDTO dto) throws Throwable {
this.execute(ACTION_FIND_ACCOUNT, dto, AccountDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(AccountDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, AccountDTO.class)
}
/**
* 行为:合并客户 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MERGE_ACCOUNT)
def mergeAccount(AccountDTO dto) throws Throwable {
this.execute(ACTION_MERGE_ACCOUNT, dto, AccountDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<AccountDTO> fetchDefault(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, AccountDTO.class)
}
/**
* 数据集:全部客户 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<AccountDTO> fetchAll(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, AccountDTO.class)
}
/**
* 数据集:分配的客户 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ASSIGNED)
Page<AccountDTO> fetchAssigned(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_ASSIGNED, context, AccountDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<AccountDTO> fetchCreateman(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, AccountDTO.class)
}
/**
* 数据集:当前客户 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CURRENT)
Page<AccountDTO> fetchCurrent(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_CURRENT, context, AccountDTO.class)
}
/**
* 数据集:当前客户外其他客户 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_NOT_CURRENT)
Page<AccountDTO> fetchNotCurrent(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_NOT_CURRENT, context, AccountDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<AccountDTO> fetchOwner(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, AccountDTO.class)
}
/**
* 数据集:被关联的数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TARGET_RELATION)
Page<AccountDTO> fetchTargetRelation(AccountFilterDTO context) throws Throwable {
return this.fetch(DATASET_TARGET_RELATION, context, AccountDTO.class)
}
}

View File

@@ -0,0 +1,663 @@
package cn.ibizlab.crm.crm.account.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class AccountDTO extends GroovyDTO<AccountDTO> {
/**
* 「开单地址-街道」
*/
@JsonProperty("billing_street")
String billingStreet
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「客户图片」
*/
@JsonProperty("record_image")
String recordImage
/**
* 「父客户」
*/
@JsonProperty("p_account_name")
String pAccountName
/**
* 「客户名称」
*/
@JsonProperty("account_name")
String accountName
/**
* 「客户编号」
*/
@JsonProperty("account_number")
String accountNumber
/**
* 「客户所在地」
*/
@JsonProperty("account_site")
String accountSite
/**
* 「客户类型」
* 字典[客户类型]
*/
@JsonProperty("account_type")
String accountType
/**
* 「年收入」
*/
@JsonProperty("annual_revenue")
String annualRevenue
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「开单地址-城市」
*/
@JsonProperty("billing_city")
String billingCity
/**
* 「开单地址-邮编」
*/
@JsonProperty("billing_code")
String billingCode
/**
* 「开单地址-国家/地区」
*/
@JsonProperty("billing_country")
String billingCountry
/**
* 「开单地址-省/市」
*/
@JsonProperty("billing_state")
String billingState
/**
* 「Change_Log_Time」
*/
@JsonProperty("change_log_time_s")
Timestamp changeLogTimeS
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「员工数」
*/
@JsonProperty("employees")
Integer employees
/**
* 「充实状态」
*/
@JsonProperty("enrich_status_s")
String enrichStatusS
/**
* 「传真」
*/
@JsonProperty("fax")
String fax
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「所属行业」
* 字典[行业]
*/
@JsonProperty("industry")
String industry
/**
* 「最近操作时间」
*/
@JsonProperty("last_activity_time")
Timestamp lastActivityTime
/**
* 「最后充实时间」
*/
@JsonProperty("last_enriched_time_s")
Timestamp lastEnrichedTimeS
/**
* 「Locked」
* 字典[是否]
*/
@JsonProperty("locked_s")
Integer lockedS
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「公司所有权」
* 字典[公司所有权]
*/
@JsonProperty("ownership")
String ownership
/**
* 「电话」
*/
@JsonProperty("phone")
String phone
/**
* 「父标识」
*/
@JsonProperty("pid")
String pid
/**
* 「等级」
* 字典[等级]
*/
@JsonProperty("rating")
String rating
/**
* 「发货地址-城市」
*/
@JsonProperty("shipping_city")
String shippingCity
/**
* 「发货地址-邮编」
*/
@JsonProperty("shipping_code")
String shippingCode
/**
* 「发货地址-国家/地区」
*/
@JsonProperty("shipping_country")
String shippingCountry
/**
* 「发货地址-省/市」
*/
@JsonProperty("shipping_state")
String shippingState
/**
* 「发货地址-街道」
*/
@JsonProperty("shipping_street")
String shippingStreet
/**
* 「SIC代码」
*/
@JsonProperty("sic_code")
Integer sicCode
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「股票代码」
*/
@JsonProperty("ticker_symbol")
String tickerSymbol
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「网站」
*/
@JsonProperty("website")
String website
/**
* 设置「开单地址-街道」值
* @param val
*/
AccountDTO setBillingStreet(String billingStreet) {
this.billingStreet = billingStreet
return this
}
/**
* 设置「描述」值
* @param val
*/
AccountDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「客户图片」值
* @param val
*/
AccountDTO setRecordImage(String recordImage) {
this.recordImage = recordImage
return this
}
/**
* 设置「父客户」值
* @param val
*/
AccountDTO setPAccountName(String pAccountName) {
this.pAccountName = pAccountName
return this
}
/**
* 设置「客户名称」值
* @param val
*/
AccountDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「客户编号」值
* @param val
*/
AccountDTO setAccountNumber(String accountNumber) {
this.accountNumber = accountNumber
return this
}
/**
* 设置「客户所在地」值
* @param val
*/
AccountDTO setAccountSite(String accountSite) {
this.accountSite = accountSite
return this
}
/**
* 设置「客户类型」值
* 字典[客户类型]
* @param val
*/
AccountDTO setAccountType(String accountType) {
this.accountType = accountType
return this
}
/**
* 设置「年收入」值
* @param val
*/
AccountDTO setAnnualRevenue(String annualRevenue) {
this.annualRevenue = annualRevenue
return this
}
/**
* 设置「附件」值
* @param val
*/
AccountDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「开单地址-城市」值
* @param val
*/
AccountDTO setBillingCity(String billingCity) {
this.billingCity = billingCity
return this
}
/**
* 设置「开单地址-邮编」值
* @param val
*/
AccountDTO setBillingCode(String billingCode) {
this.billingCode = billingCode
return this
}
/**
* 设置「开单地址-国家/地区」值
* @param val
*/
AccountDTO setBillingCountry(String billingCountry) {
this.billingCountry = billingCountry
return this
}
/**
* 设置「开单地址-省/市」值
* @param val
*/
AccountDTO setBillingState(String billingState) {
this.billingState = billingState
return this
}
/**
* 设置「Change_Log_Time」值
* @param val
*/
AccountDTO setChangeLogTimeS(Timestamp changeLogTimeS) {
this.changeLogTimeS = changeLogTimeS
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
AccountDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
AccountDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「员工数」值
* @param val
*/
AccountDTO setEmployees(Integer employees) {
this.employees = employees
return this
}
/**
* 设置「充实状态」值
* @param val
*/
AccountDTO setEnrichStatusS(String enrichStatusS) {
this.enrichStatusS = enrichStatusS
return this
}
/**
* 设置「传真」值
* @param val
*/
AccountDTO setFax(String fax) {
this.fax = fax
return this
}
/**
* 设置「标识」值
* @param val
*/
AccountDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「所属行业」值
* 字典[行业]
* @param val
*/
AccountDTO setIndustry(String industry) {
this.industry = industry
return this
}
/**
* 设置「最近操作时间」值
* @param val
*/
AccountDTO setLastActivityTime(Timestamp lastActivityTime) {
this.lastActivityTime = lastActivityTime
return this
}
/**
* 设置「最后充实时间」值
* @param val
*/
AccountDTO setLastEnrichedTimeS(Timestamp lastEnrichedTimeS) {
this.lastEnrichedTimeS = lastEnrichedTimeS
return this
}
/**
* 设置「Locked」值
* 字典[是否]
* @param val
*/
AccountDTO setLockedS(Integer lockedS) {
this.lockedS = lockedS
return this
}
/**
* 设置「名称」值
* @param val
*/
AccountDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
AccountDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「公司所有权」值
* 字典[公司所有权]
* @param val
*/
AccountDTO setOwnership(String ownership) {
this.ownership = ownership
return this
}
/**
* 设置「电话」值
* @param val
*/
AccountDTO setPhone(String phone) {
this.phone = phone
return this
}
/**
* 设置「父标识」值
* @param val
*/
AccountDTO setPid(String pid) {
this.pid = pid
return this
}
/**
* 设置「等级」值
* 字典[等级]
* @param val
*/
AccountDTO setRating(String rating) {
this.rating = rating
return this
}
/**
* 设置「发货地址-城市」值
* @param val
*/
AccountDTO setShippingCity(String shippingCity) {
this.shippingCity = shippingCity
return this
}
/**
* 设置「发货地址-邮编」值
* @param val
*/
AccountDTO setShippingCode(String shippingCode) {
this.shippingCode = shippingCode
return this
}
/**
* 设置「发货地址-国家/地区」值
* @param val
*/
AccountDTO setShippingCountry(String shippingCountry) {
this.shippingCountry = shippingCountry
return this
}
/**
* 设置「发货地址-省/市」值
* @param val
*/
AccountDTO setShippingState(String shippingState) {
this.shippingState = shippingState
return this
}
/**
* 设置「发货地址-街道」值
* @param val
*/
AccountDTO setShippingStreet(String shippingStreet) {
this.shippingStreet = shippingStreet
return this
}
/**
* 设置「SIC代码」值
* @param val
*/
AccountDTO setSicCode(Integer sicCode) {
this.sicCode = sicCode
return this
}
/**
* 设置「标签」值
* @param val
*/
AccountDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「股票代码」值
* @param val
*/
AccountDTO setTickerSymbol(String tickerSymbol) {
this.tickerSymbol = tickerSymbol
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
AccountDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
AccountDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「网站」值
* @param val
*/
AccountDTO setWebsite(String website) {
this.website = website
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.account.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class AccountFilterDTO extends GroovyFilter<AccountFilterDTO> {
}

View File

@@ -0,0 +1,75 @@
package cn.ibizlab.crm.crm.account.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[ACCOUNT]处理逻辑[删除被合并客户]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class DeleteMarge extends DELogicRuntime {
private static final Log log = LogFactory.getLog(DeleteMarge.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,103 @@
package cn.ibizlab.crm.crm.account.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[ACCOUNT]处理逻辑[获取客户信息]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class FindAccount extends DELogicRuntime {
private static final Log log = LogFactory.getLog(FindAccount.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,607 @@
package cn.ibizlab.crm.crm.account.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[ACCOUNT]处理逻辑[合并客户]运行时对象
* 此代码用户功能扩展代码
*
* 在填入重复客户的时候将客户合并为一个
*/
class MergeAccount extends DELogicRuntime {
private static final Log log = LogFactory.getLog(MergeAccount.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM3":
//执行逻辑节点[准备参数]
executePREPAREPARAM3(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM4":
//执行逻辑节点[准备参数]
executePREPAREPARAM4(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM6":
//执行逻辑节点[准备参数]
executePREPAREPARAM6(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET1":
//执行逻辑节点[实体数据集]
executeDEDATASET1(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET3":
//执行逻辑节点[实体数据集]
executeDEDATASET3(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET4":
//执行逻辑节点[实体数据集]
executeDEDATASET4(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL3":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL3(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM5":
//执行逻辑节点[准备参数]
executePREPAREPARAM5(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM7":
//执行逻辑节点[准备参数]
executePREPAREPARAM7(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM8":
//执行逻辑节点[准备参数]
executePREPAREPARAM8(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET2":
//执行逻辑节点[实体数据集]
executeDEDATASET2(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET5":
//执行逻辑节点[实体数据集]
executeDEDATASET5(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET6":
//执行逻辑节点[实体数据集]
executeDEDATASET6(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET7":
//执行逻辑节点[实体数据集]
executeDEDATASET7(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET8":
//执行逻辑节点[实体数据集]
executeDEDATASET8(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL1":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL1(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL2":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL2(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL4":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL4(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL5":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL5(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL6":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL6(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL7":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL7(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL8":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL8(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM16":
//执行逻辑节点[准备参数]
executePREPAREPARAM16(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM10":
//执行逻辑节点[准备参数]
executePREPAREPARAM10(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM11":
//执行逻辑节点[准备参数]
executePREPAREPARAM11(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM12":
//执行逻辑节点[准备参数]
executePREPAREPARAM12(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM13":
//执行逻辑节点[准备参数]
executePREPAREPARAM13(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM14":
//执行逻辑节点[准备参数]
executePREPAREPARAM14(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM15":
//执行逻辑节点[准备参数]
executePREPAREPARAM15(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM17":
//执行逻辑节点[准备参数]
executePREPAREPARAM17(iDELogicSession, iPSDELogicNode)
break
case "DEACTION2":
//执行逻辑节点[实体行为]
executeDEACTION2(iDELogicSession, iPSDELogicNode)
break
case "DEACTION3":
//执行逻辑节点[实体行为]
executeDEACTION3(iDELogicSession, iPSDELogicNode)
break
case "DEACTION4":
//执行逻辑节点[实体行为]
executeDEACTION4(iDELogicSession, iPSDELogicNode)
break
case "DEACTION5":
//执行逻辑节点[实体行为]
executeDEACTION5(iDELogicSession, iPSDELogicNode)
break
case "DEACTION6":
//执行逻辑节点[实体行为]
executeDEACTION6(iDELogicSession, iPSDELogicNode)
break
case "DEACTION7":
//执行逻辑节点[实体行为]
executeDEACTION7(iDELogicSession, iPSDELogicNode)
break
case "DEACTION8":
//执行逻辑节点[实体行为]
executeDEACTION8(iDELogicSession, iPSDELogicNode)
break
case "DEACTION9":
//执行逻辑节点[实体行为]
executeDEACTION9(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM6(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM5(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM7(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM8(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET5(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET6(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET7(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET8(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL5(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL6(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL7(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL8(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM16(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM10(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM11(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM12(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM13(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM14(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM15(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM17(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION5(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION6(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION7(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION8(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION9(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,119 @@
package cn.ibizlab.crm.crm.activitiy
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.activitiy.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[ACTIVITIY]运行时对象
* 此代码用户功能扩展代码
*
*/
class Activitiy extends GroovyDataEntityRuntime<Activitiy,ActivitiyDTO,ActivitiyFilterDTO> {
public static final String DATASET_ALL = "ALL"
public static final String DATASET_DEFAULT = "DEFAULT"
private static Activitiy _instance
void setInstance(Activitiy instance) {
_instance = instance
}
static Activitiy getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
ActivitiyDTO create(ActivitiyDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, ActivitiyDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
ActivitiyDTO update(ActivitiyDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, ActivitiyDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
ActivitiyDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, ActivitiyDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
ActivitiyDTO getDraft(ActivitiyDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, ActivitiyDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(ActivitiyDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
ActivitiyDTO save(ActivitiyDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, ActivitiyDTO.class)
}
/**
* 数据集:所有活动 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<ActivitiyDTO> fetchALL(ActivitiyFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, ActivitiyDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<ActivitiyDTO> fetchDefault(ActivitiyFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, ActivitiyDTO.class)
}
}

View File

@@ -0,0 +1,215 @@
package cn.ibizlab.crm.crm.activitiy.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ActivitiyDTO extends GroovyDTO<ActivitiyDTO> {
/**
* 「审计信息」
*/
@JsonProperty("audit_info")
String auditInfo
/**
* 「审计类型」
*/
@JsonProperty("audit_type")
String auditType
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「访问地址」
*/
@JsonProperty("ip_address")
String ipAddress
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「对象类型」
*/
@JsonProperty("object_type")
String objectType
/**
* 「对象标识」
*/
@JsonProperty("objectid")
String objectid
/**
* 「操作人」
*/
@JsonProperty("op_person_id")
String opPersonId
/**
* 「操作人」
*/
@JsonProperty("op_person_name")
String opPersonName
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「审计信息」值
* @param val
*/
ActivitiyDTO setAuditInfo(String auditInfo) {
this.auditInfo = auditInfo
return this
}
/**
* 设置「审计类型」值
* @param val
*/
ActivitiyDTO setAuditType(String auditType) {
this.auditType = auditType
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
ActivitiyDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
ActivitiyDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
ActivitiyDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「访问地址」值
* @param val
*/
ActivitiyDTO setIpAddress(String ipAddress) {
this.ipAddress = ipAddress
return this
}
/**
* 设置「名称」值
* @param val
*/
ActivitiyDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「对象类型」值
* @param val
*/
ActivitiyDTO setObjectType(String objectType) {
this.objectType = objectType
return this
}
/**
* 设置「对象标识」值
* @param val
*/
ActivitiyDTO setObjectid(String objectid) {
this.objectid = objectid
return this
}
/**
* 设置「操作人」值
* @param val
*/
ActivitiyDTO setOpPersonId(String opPersonId) {
this.opPersonId = opPersonId
return this
}
/**
* 设置「操作人」值
* @param val
*/
ActivitiyDTO setOpPersonName(String opPersonName) {
this.opPersonName = opPersonName
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
ActivitiyDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
ActivitiyDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.activitiy.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ActivitiyFilterDTO extends GroovyFilter<ActivitiyFilterDTO> {
}

View File

@@ -0,0 +1,119 @@
package cn.ibizlab.crm.crm.attachment
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.attachment.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[ATTACHMENT]运行时对象
* 此代码用户功能扩展代码
*
*/
class Attachment extends GroovyDataEntityRuntime<Attachment,AttachmentDTO,AttachmentFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
private static Attachment _instance
void setInstance(Attachment instance) {
_instance = instance
}
static Attachment getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
AttachmentDTO create(AttachmentDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, AttachmentDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
AttachmentDTO update(AttachmentDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, AttachmentDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
AttachmentDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, AttachmentDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
AttachmentDTO getDraft(AttachmentDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, AttachmentDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(AttachmentDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
AttachmentDTO save(AttachmentDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, AttachmentDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<AttachmentDTO> fetchDefault(AttachmentFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, AttachmentDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<AttachmentDTO> fetchAll(AttachmentFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, AttachmentDTO.class)
}
}

View File

@@ -0,0 +1,185 @@
package cn.ibizlab.crm.crm.attachment.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class AttachmentDTO extends GroovyDTO<AttachmentDTO> {
/**
* 「所属数据标识」
*/
@JsonProperty("owner_id")
String ownerId
/**
* 「所属数据对象」
*/
@JsonProperty("owner_type")
String ownerType
/**
* 「所属对象子类型」
*/
@JsonProperty("owner_subtype")
String ownerSubtype
/**
* 「文件标识」
*/
@JsonProperty("file_id")
String fileId
/**
* 「标题」
*/
@JsonProperty("title")
String title
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「所属数据标识」值
* @param val
*/
AttachmentDTO setOwnerId(String ownerId) {
this.ownerId = ownerId
return this
}
/**
* 设置「所属数据对象」值
* @param val
*/
AttachmentDTO setOwnerType(String ownerType) {
this.ownerType = ownerType
return this
}
/**
* 设置「所属对象子类型」值
* @param val
*/
AttachmentDTO setOwnerSubtype(String ownerSubtype) {
this.ownerSubtype = ownerSubtype
return this
}
/**
* 设置「文件标识」值
* @param val
*/
AttachmentDTO setFileId(String fileId) {
this.fileId = fileId
return this
}
/**
* 设置「标题」值
* @param val
*/
AttachmentDTO setTitle(String title) {
this.title = title
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
AttachmentDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
AttachmentDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
AttachmentDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
AttachmentDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
AttachmentDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
AttachmentDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.attachment.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class AttachmentFilterDTO extends GroovyFilter<AttachmentFilterDTO> {
}

View File

@@ -0,0 +1,185 @@
package cn.ibizlab.crm.crm.call
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.call.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[CALL]运行时对象
* 此代码用户功能扩展代码
*
*/
class Call extends GroovyDataEntityRuntime<Call,CallDTO,CallFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_CLOSE = "close"
public static final String DATASET_NOT_CLOSE = "not_close"
private static Call _instance
void setInstance(Call instance) {
_instance = instance
}
static Call getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
CallDTO create(CallDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, CallDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
CallDTO update(CallDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, CallDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
CallDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, CallDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
CallDTO getDraft(CallDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, CallDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(CallDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
CallDTO save(CallDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, CallDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(CallDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, CallDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(CallDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, CallDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(CallDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, CallDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(CallDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, CallDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(CallDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, CallDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<CallDTO> fetchDefault(CallFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, CallDTO.class)
}
/**
* 数据集:关闭的 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CLOSE)
Page<CallDTO> fetchClose(CallFilterDTO context) throws Throwable {
return this.fetch(DATASET_CLOSE, context, CallDTO.class)
}
/**
* 数据集:未关闭的 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_NOT_CLOSE)
Page<CallDTO> fetchNotClose(CallFilterDTO context) throws Throwable {
return this.fetch(DATASET_NOT_CLOSE, context, CallDTO.class)
}
}

View File

@@ -0,0 +1,430 @@
package cn.ibizlab.crm.crm.call.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class CallDTO extends GroovyDTO<CallDTO> {
/**
* 「所属数据标识」
*/
@JsonProperty("owner_id")
String ownerId
/**
* 「所属数据对象」
*/
@JsonProperty("owner_type")
String ownerType
/**
* 「所属对象子类型」
*/
@JsonProperty("owner_subtype")
String ownerSubtype
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「通话议程」
*/
@JsonProperty("call_agenda")
String callAgenda
/**
* 「通话持续时间」
*/
@JsonProperty("call_duration")
String callDuration
/**
* 「通话持续时间(秒)」
*/
@JsonProperty("call_duration_in_seconds")
Integer callDurationInSeconds
/**
* 「通话目的」
*/
@JsonProperty("call_purpose")
String callPurpose
/**
* 「通话结果」
*/
@JsonProperty("call_result")
String callResult
/**
* 「通话开始时间」
*/
@JsonProperty("call_start_time")
Timestamp callStartTime
/**
* 「通话类型」
*/
@JsonProperty("call_type")
String callType
/**
* 「呼叫者ID」
*/
@JsonProperty("caller_id")
String callerId
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「CTI条目」
* 字典[是否]
*/
@JsonProperty("cti_entry")
Integer ctiEntry
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「拨打的号码」
*/
@JsonProperty("dialled_number")
String dialledNumber
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「去电通话状态」
* 字典[去电通话状态]
*/
@JsonProperty("outgoing_call_status")
String outgoingCallStatus
/**
* 「提醒」
*/
@JsonProperty("reminder")
String reminder
/**
* 「在CRM中已预定」
*/
@JsonProperty("scheduled_in_crm")
String scheduledInCrm
/**
* 「主题」
*/
@JsonProperty("subject")
String subject
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「语音录音」
*/
@JsonProperty("voice_recording_s")
String voiceRecordingS
/**
* 设置「所属数据标识」值
* @param val
*/
CallDTO setOwnerId(String ownerId) {
this.ownerId = ownerId
return this
}
/**
* 设置「所属数据对象」值
* @param val
*/
CallDTO setOwnerType(String ownerType) {
this.ownerType = ownerType
return this
}
/**
* 设置「所属对象子类型」值
* @param val
*/
CallDTO setOwnerSubtype(String ownerSubtype) {
this.ownerSubtype = ownerSubtype
return this
}
/**
* 设置「附件」值
* @param val
*/
CallDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「通话议程」值
* @param val
*/
CallDTO setCallAgenda(String callAgenda) {
this.callAgenda = callAgenda
return this
}
/**
* 设置「通话持续时间」值
* @param val
*/
CallDTO setCallDuration(String callDuration) {
this.callDuration = callDuration
return this
}
/**
* 设置「通话持续时间(秒)」值
* @param val
*/
CallDTO setCallDurationInSeconds(Integer callDurationInSeconds) {
this.callDurationInSeconds = callDurationInSeconds
return this
}
/**
* 设置「通话目的」值
* @param val
*/
CallDTO setCallPurpose(String callPurpose) {
this.callPurpose = callPurpose
return this
}
/**
* 设置「通话结果」值
* @param val
*/
CallDTO setCallResult(String callResult) {
this.callResult = callResult
return this
}
/**
* 设置「通话开始时间」值
* @param val
*/
CallDTO setCallStartTime(Timestamp callStartTime) {
this.callStartTime = callStartTime
return this
}
/**
* 设置「通话类型」值
* @param val
*/
CallDTO setCallType(String callType) {
this.callType = callType
return this
}
/**
* 设置「呼叫者ID」值
* @param val
*/
CallDTO setCallerId(String callerId) {
this.callerId = callerId
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
CallDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
CallDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「CTI条目」值
* 字典[是否]
* @param val
*/
CallDTO setCtiEntry(Integer ctiEntry) {
this.ctiEntry = ctiEntry
return this
}
/**
* 设置「描述」值
* @param val
*/
CallDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「拨打的号码」值
* @param val
*/
CallDTO setDialledNumber(String dialledNumber) {
this.dialledNumber = dialledNumber
return this
}
/**
* 设置「标识」值
* @param val
*/
CallDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
CallDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「去电通话状态」值
* 字典[去电通话状态]
* @param val
*/
CallDTO setOutgoingCallStatus(String outgoingCallStatus) {
this.outgoingCallStatus = outgoingCallStatus
return this
}
/**
* 设置「提醒」值
* @param val
*/
CallDTO setReminder(String reminder) {
this.reminder = reminder
return this
}
/**
* 设置「在CRM中已预定」值
* @param val
*/
CallDTO setScheduledInCrm(String scheduledInCrm) {
this.scheduledInCrm = scheduledInCrm
return this
}
/**
* 设置「主题」值
* @param val
*/
CallDTO setSubject(String subject) {
this.subject = subject
return this
}
/**
* 设置「标签」值
* @param val
*/
CallDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
CallDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
CallDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「语音录音」值
* @param val
*/
CallDTO setVoiceRecordingS(String voiceRecordingS) {
this.voiceRecordingS = voiceRecordingS
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.call.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class CallFilterDTO extends GroovyFilter<CallFilterDTO> {
}

View File

@@ -0,0 +1,163 @@
package cn.ibizlab.crm.crm.campaign
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.campaign.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[CAMPAIGN]运行时对象
* 此代码用户功能扩展代码
*
*/
class Campaign extends GroovyDataEntityRuntime<Campaign,CampaignDTO,CampaignFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String DATASET_DEFAULT = "DEFAULT"
private static Campaign _instance
void setInstance(Campaign instance) {
_instance = instance
}
static Campaign getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
CampaignDTO create(CampaignDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, CampaignDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
CampaignDTO update(CampaignDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, CampaignDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
CampaignDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, CampaignDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
CampaignDTO getDraft(CampaignDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, CampaignDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(CampaignDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
CampaignDTO save(CampaignDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, CampaignDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(CampaignDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, CampaignDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(CampaignDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, CampaignDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(CampaignDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, CampaignDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(CampaignDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, CampaignDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(CampaignDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, CampaignDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<CampaignDTO> fetchDefault(CampaignFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, CampaignDTO.class)
}
}

View File

@@ -0,0 +1,445 @@
package cn.ibizlab.crm.crm.campaign.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class CampaignDTO extends GroovyDTO<CampaignDTO> {
/**
* 「实际成本」
*/
@JsonProperty("actual_cost")
String actualCost
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「预算成本」
*/
@JsonProperty("budgeted_cost")
String budgetedCost
/**
* 「市场活动名称」
*/
@JsonProperty("campaign_name")
String campaignName
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「结束日期」
*/
@JsonProperty("end_date")
Timestamp endDate
/**
* 「期望成功率(%)」
*/
@JsonProperty("expected_response")
BigInteger expectedResponse
/**
* 「预期收益」
*/
@JsonProperty("expected_revenue")
String expectedRevenue
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「部门ID」
*/
@JsonProperty("native_survey_extn_department_id")
String nativeSurveyExtnDepartmentId
/**
* 「调查」
*/
@JsonProperty("native_survey_extn_survey")
String nativeSurveyExtnSurvey
/**
* 「调查部门」
*/
@JsonProperty("native_survey_extn_survey_department")
String nativeSurveyExtnSurveyDepartment
/**
* 「调查类型」
*/
@JsonProperty("native_survey_extn_survey_type")
String nativeSurveyExtnSurveyType
/**
* 「调查URL」
*/
@JsonProperty("native_survey_extn_survey_url")
String nativeSurveyExtnSurveyUrl
/**
* 「网络研讨会持续时间」
*/
@JsonProperty("native_webinar_extn_webinar_duration")
String nativeWebinarExtnWebinarDuration
/**
* 「网络研讨会启动URL」
*/
@JsonProperty("native_webinar_extn_webinar_launch_url")
String nativeWebinarExtnWebinarLaunchUrl
/**
* 「网络研讨会注册URL」
*/
@JsonProperty("native_webinar_extn_webinar_registration_url")
String nativeWebinarExtnWebinarRegistrationUrl
/**
* 「网络研讨会时间表」
*/
@JsonProperty("native_webinar_extn_webinar_schedule")
Timestamp nativeWebinarExtnWebinarSchedule
/**
* 「发出数量」
*/
@JsonProperty("num_sent")
BigInteger numSent
/**
* 「开始日期」
*/
@JsonProperty("start_date")
Timestamp startDate
/**
* 「状态」
* 字典[活动状态]
*/
@JsonProperty("status")
String status
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「类型」
* 字典[市场活动类型]
*/
@JsonProperty("type")
String type
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「实际成本」值
* @param val
*/
CampaignDTO setActualCost(String actualCost) {
this.actualCost = actualCost
return this
}
/**
* 设置「附件」值
* @param val
*/
CampaignDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「预算成本」值
* @param val
*/
CampaignDTO setBudgetedCost(String budgetedCost) {
this.budgetedCost = budgetedCost
return this
}
/**
* 设置「市场活动名称」值
* @param val
*/
CampaignDTO setCampaignName(String campaignName) {
this.campaignName = campaignName
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
CampaignDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
CampaignDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「描述」值
* @param val
*/
CampaignDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「结束日期」值
* @param val
*/
CampaignDTO setEndDate(Timestamp endDate) {
this.endDate = endDate
return this
}
/**
* 设置「期望成功率(%)」值
* @param val
*/
CampaignDTO setExpectedResponse(BigInteger expectedResponse) {
this.expectedResponse = expectedResponse
return this
}
/**
* 设置「预期收益」值
* @param val
*/
CampaignDTO setExpectedRevenue(String expectedRevenue) {
this.expectedRevenue = expectedRevenue
return this
}
/**
* 设置「标识」值
* @param val
*/
CampaignDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
CampaignDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「部门ID」值
* @param val
*/
CampaignDTO setNativeSurveyExtnDepartmentId(String nativeSurveyExtnDepartmentId) {
this.nativeSurveyExtnDepartmentId = nativeSurveyExtnDepartmentId
return this
}
/**
* 设置「调查」值
* @param val
*/
CampaignDTO setNativeSurveyExtnSurvey(String nativeSurveyExtnSurvey) {
this.nativeSurveyExtnSurvey = nativeSurveyExtnSurvey
return this
}
/**
* 设置「调查部门」值
* @param val
*/
CampaignDTO setNativeSurveyExtnSurveyDepartment(String nativeSurveyExtnSurveyDepartment) {
this.nativeSurveyExtnSurveyDepartment = nativeSurveyExtnSurveyDepartment
return this
}
/**
* 设置「调查类型」值
* @param val
*/
CampaignDTO setNativeSurveyExtnSurveyType(String nativeSurveyExtnSurveyType) {
this.nativeSurveyExtnSurveyType = nativeSurveyExtnSurveyType
return this
}
/**
* 设置「调查URL」值
* @param val
*/
CampaignDTO setNativeSurveyExtnSurveyUrl(String nativeSurveyExtnSurveyUrl) {
this.nativeSurveyExtnSurveyUrl = nativeSurveyExtnSurveyUrl
return this
}
/**
* 设置「网络研讨会持续时间」值
* @param val
*/
CampaignDTO setNativeWebinarExtnWebinarDuration(String nativeWebinarExtnWebinarDuration) {
this.nativeWebinarExtnWebinarDuration = nativeWebinarExtnWebinarDuration
return this
}
/**
* 设置「网络研讨会启动URL」值
* @param val
*/
CampaignDTO setNativeWebinarExtnWebinarLaunchUrl(String nativeWebinarExtnWebinarLaunchUrl) {
this.nativeWebinarExtnWebinarLaunchUrl = nativeWebinarExtnWebinarLaunchUrl
return this
}
/**
* 设置「网络研讨会注册URL」值
* @param val
*/
CampaignDTO setNativeWebinarExtnWebinarRegistrationUrl(String nativeWebinarExtnWebinarRegistrationUrl) {
this.nativeWebinarExtnWebinarRegistrationUrl = nativeWebinarExtnWebinarRegistrationUrl
return this
}
/**
* 设置「网络研讨会时间表」值
* @param val
*/
CampaignDTO setNativeWebinarExtnWebinarSchedule(Timestamp nativeWebinarExtnWebinarSchedule) {
this.nativeWebinarExtnWebinarSchedule = nativeWebinarExtnWebinarSchedule
return this
}
/**
* 设置「发出数量」值
* @param val
*/
CampaignDTO setNumSent(BigInteger numSent) {
this.numSent = numSent
return this
}
/**
* 设置「开始日期」值
* @param val
*/
CampaignDTO setStartDate(Timestamp startDate) {
this.startDate = startDate
return this
}
/**
* 设置「状态」值
* 字典[活动状态]
* @param val
*/
CampaignDTO setStatus(String status) {
this.status = status
return this
}
/**
* 设置「标签」值
* @param val
*/
CampaignDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「类型」值
* 字典[市场活动类型]
* @param val
*/
CampaignDTO setType(String type) {
this.type = type
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
CampaignDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
CampaignDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.campaign.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class CampaignFilterDTO extends GroovyFilter<CampaignFilterDTO> {
}

View File

@@ -0,0 +1,196 @@
package cn.ibizlab.crm.crm.contact
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.contact.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[CONTACT]运行时对象
* 此代码用户功能扩展代码
*
*/
class Contact extends GroovyDataEntityRuntime<Contact,ContactDTO,ContactFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_OWNER = "owner"
private static Contact _instance
void setInstance(Contact instance) {
_instance = instance
}
static Contact getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
ContactDTO create(ContactDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, ContactDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
ContactDTO update(ContactDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, ContactDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
ContactDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, ContactDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
ContactDTO getDraft(ContactDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, ContactDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(ContactDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
ContactDTO save(ContactDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, ContactDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(ContactDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, ContactDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(ContactDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, ContactDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(ContactDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, ContactDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(ContactDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, ContactDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(ContactDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, ContactDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<ContactDTO> fetchDefault(ContactFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, ContactDTO.class)
}
/**
* 数据集:全部联系人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<ContactDTO> fetchAll(ContactFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, ContactDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<ContactDTO> fetchCreateman(ContactFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, ContactDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<ContactDTO> fetchOwner(ContactFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, ContactDTO.class)
}
}

View File

@@ -0,0 +1,749 @@
package cn.ibizlab.crm.crm.contact.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ContactDTO extends GroovyDTO<ContactDTO> {
/**
* 「客户名称」
*/
@JsonProperty("account_name")
String accountName
/**
* 「客户ID」
*/
@JsonProperty("account_id")
String accountId
/**
* 「助理」
*/
@JsonProperty("assistant")
String assistant
/**
* 「助理电话」
*/
@JsonProperty("asst_phone")
String asstPhone
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「Change_Log_Time」
*/
@JsonProperty("change_log_time_s")
Timestamp changeLogTimeS
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「生日」
*/
@JsonProperty("date_of_birth")
Timestamp dateOfBirth
/**
* 「部门」
*/
@JsonProperty("department")
String department
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「电子邮件」
*/
@JsonProperty("email")
String email
/**
* 「不发营销邮件」
* 字典[是否]
*/
@JsonProperty("email_opt_out")
Integer emailOptOut
/**
* 「充实状态」
*/
@JsonProperty("enrich_status_s")
String enrichStatusS
/**
* 「传真」
*/
@JsonProperty("fax")
String fax
/**
* 「名字」
*/
@JsonProperty("first_name")
String firstName
/**
* 「全名」
*/
@JsonProperty("full_name")
String fullName
/**
* 「住宅电话」
*/
@JsonProperty("home_phone")
String homePhone
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「最近操作时间」
*/
@JsonProperty("last_activity_time")
Timestamp lastActivityTime
/**
* 「最后充实时间」
*/
@JsonProperty("last_enriched_time_s")
Timestamp lastEnrichedTimeS
/**
* 「姓氏」
*/
@JsonProperty("last_name")
String lastName
/**
* 「线索来源」
* 字典[线索来源]
*/
@JsonProperty("lead_source")
String leadSource
/**
* 「Locked」
* 字典[是否]
*/
@JsonProperty("locked_s")
Integer lockedS
/**
* 「邮寄地址-城市」
*/
@JsonProperty("mailing_city")
String mailingCity
/**
* 「邮寄地址-国家/地」
*/
@JsonProperty("mailing_country")
String mailingCountry
/**
* 「邮寄地址-省/市」
*/
@JsonProperty("mailing_state")
String mailingState
/**
* 「邮寄地址-街道」
*/
@JsonProperty("mailing_street")
String mailingStreet
/**
* 「邮寄地址-邮编」
*/
@JsonProperty("mailing_zip")
String mailingZip
/**
* 「手机」
*/
@JsonProperty("mobile")
String mobile
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「其它城市」
*/
@JsonProperty("other_city")
String otherCity
/**
* 「其它国家/地区」
*/
@JsonProperty("other_country")
String otherCountry
/**
* 「其它省/市」
*/
@JsonProperty("other_state")
String otherState
/**
* 「其它街道」
*/
@JsonProperty("other_street")
String otherStreet
/**
* 「其他邮编」
*/
@JsonProperty("other_zip")
String otherZip
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「电话」
*/
@JsonProperty("phone")
String phone
/**
* 「联系人图片」
*/
@JsonProperty("record_image")
String recordImage
/**
* 「称呼」
*/
@JsonProperty("salutation")
String salutation
/**
* 「备用邮箱」
*/
@JsonProperty("secondary_email")
String secondaryEmail
/**
* 「Skype_ID」
*/
@JsonProperty("skype_id")
String skypeId
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「职位/职称」
*/
@JsonProperty("title")
String title
/**
* 「退订的方式」
*/
@JsonProperty("unsubscribed_mode")
String unsubscribedMode
/**
* 「退订的时间」
*/
@JsonProperty("unsubscribed_time")
Timestamp unsubscribedTime
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「客户名称」值
* @param val
*/
ContactDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「客户ID」值
* @param val
*/
ContactDTO setAccountId(String accountId) {
this.accountId = accountId
return this
}
/**
* 设置「助理」值
* @param val
*/
ContactDTO setAssistant(String assistant) {
this.assistant = assistant
return this
}
/**
* 设置「助理电话」值
* @param val
*/
ContactDTO setAsstPhone(String asstPhone) {
this.asstPhone = asstPhone
return this
}
/**
* 设置「附件」值
* @param val
*/
ContactDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「Change_Log_Time」值
* @param val
*/
ContactDTO setChangeLogTimeS(Timestamp changeLogTimeS) {
this.changeLogTimeS = changeLogTimeS
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
ContactDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
ContactDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「生日」值
* @param val
*/
ContactDTO setDateOfBirth(Timestamp dateOfBirth) {
this.dateOfBirth = dateOfBirth
return this
}
/**
* 设置「部门」值
* @param val
*/
ContactDTO setDepartment(String department) {
this.department = department
return this
}
/**
* 设置「描述」值
* @param val
*/
ContactDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「电子邮件」值
* @param val
*/
ContactDTO setEmail(String email) {
this.email = email
return this
}
/**
* 设置「不发营销邮件」值
* 字典[是否]
* @param val
*/
ContactDTO setEmailOptOut(Integer emailOptOut) {
this.emailOptOut = emailOptOut
return this
}
/**
* 设置「充实状态」值
* @param val
*/
ContactDTO setEnrichStatusS(String enrichStatusS) {
this.enrichStatusS = enrichStatusS
return this
}
/**
* 设置「传真」值
* @param val
*/
ContactDTO setFax(String fax) {
this.fax = fax
return this
}
/**
* 设置「名字」值
* @param val
*/
ContactDTO setFirstName(String firstName) {
this.firstName = firstName
return this
}
/**
* 设置「全名」值
* @param val
*/
ContactDTO setFullName(String fullName) {
this.fullName = fullName
return this
}
/**
* 设置「住宅电话」值
* @param val
*/
ContactDTO setHomePhone(String homePhone) {
this.homePhone = homePhone
return this
}
/**
* 设置「标识」值
* @param val
*/
ContactDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「最近操作时间」值
* @param val
*/
ContactDTO setLastActivityTime(Timestamp lastActivityTime) {
this.lastActivityTime = lastActivityTime
return this
}
/**
* 设置「最后充实时间」值
* @param val
*/
ContactDTO setLastEnrichedTimeS(Timestamp lastEnrichedTimeS) {
this.lastEnrichedTimeS = lastEnrichedTimeS
return this
}
/**
* 设置「姓氏」值
* @param val
*/
ContactDTO setLastName(String lastName) {
this.lastName = lastName
return this
}
/**
* 设置「线索来源」值
* 字典[线索来源]
* @param val
*/
ContactDTO setLeadSource(String leadSource) {
this.leadSource = leadSource
return this
}
/**
* 设置「Locked」值
* 字典[是否]
* @param val
*/
ContactDTO setLockedS(Integer lockedS) {
this.lockedS = lockedS
return this
}
/**
* 设置「邮寄地址-城市」值
* @param val
*/
ContactDTO setMailingCity(String mailingCity) {
this.mailingCity = mailingCity
return this
}
/**
* 设置「邮寄地址-国家/地」值
* @param val
*/
ContactDTO setMailingCountry(String mailingCountry) {
this.mailingCountry = mailingCountry
return this
}
/**
* 设置「邮寄地址-省/市」值
* @param val
*/
ContactDTO setMailingState(String mailingState) {
this.mailingState = mailingState
return this
}
/**
* 设置「邮寄地址-街道」值
* @param val
*/
ContactDTO setMailingStreet(String mailingStreet) {
this.mailingStreet = mailingStreet
return this
}
/**
* 设置「邮寄地址-邮编」值
* @param val
*/
ContactDTO setMailingZip(String mailingZip) {
this.mailingZip = mailingZip
return this
}
/**
* 设置「手机」值
* @param val
*/
ContactDTO setMobile(String mobile) {
this.mobile = mobile
return this
}
/**
* 设置「名称」值
* @param val
*/
ContactDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「其它城市」值
* @param val
*/
ContactDTO setOtherCity(String otherCity) {
this.otherCity = otherCity
return this
}
/**
* 设置「其它国家/地区」值
* @param val
*/
ContactDTO setOtherCountry(String otherCountry) {
this.otherCountry = otherCountry
return this
}
/**
* 设置「其它省/市」值
* @param val
*/
ContactDTO setOtherState(String otherState) {
this.otherState = otherState
return this
}
/**
* 设置「其它街道」值
* @param val
*/
ContactDTO setOtherStreet(String otherStreet) {
this.otherStreet = otherStreet
return this
}
/**
* 设置「其他邮编」值
* @param val
*/
ContactDTO setOtherZip(String otherZip) {
this.otherZip = otherZip
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
ContactDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「电话」值
* @param val
*/
ContactDTO setPhone(String phone) {
this.phone = phone
return this
}
/**
* 设置「联系人图片」值
* @param val
*/
ContactDTO setRecordImage(String recordImage) {
this.recordImage = recordImage
return this
}
/**
* 设置「称呼」值
* @param val
*/
ContactDTO setSalutation(String salutation) {
this.salutation = salutation
return this
}
/**
* 设置「备用邮箱」值
* @param val
*/
ContactDTO setSecondaryEmail(String secondaryEmail) {
this.secondaryEmail = secondaryEmail
return this
}
/**
* 设置「Skype_ID」值
* @param val
*/
ContactDTO setSkypeId(String skypeId) {
this.skypeId = skypeId
return this
}
/**
* 设置「标签」值
* @param val
*/
ContactDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「职位/职称」值
* @param val
*/
ContactDTO setTitle(String title) {
this.title = title
return this
}
/**
* 设置「退订的方式」值
* @param val
*/
ContactDTO setUnsubscribedMode(String unsubscribedMode) {
this.unsubscribedMode = unsubscribedMode
return this
}
/**
* 设置「退订的时间」值
* @param val
*/
ContactDTO setUnsubscribedTime(Timestamp unsubscribedTime) {
this.unsubscribedTime = unsubscribedTime
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
ContactDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
ContactDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.contact.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ContactFilterDTO extends GroovyFilter<ContactFilterDTO> {
}

View File

@@ -0,0 +1,141 @@
package cn.ibizlab.crm.crm.custombutton
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.custombutton.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[CUSTOM_BUTTON]运行时对象
* 此代码用户功能扩展代码
*
*/
class CustomButton extends GroovyDataEntityRuntime<CustomButton,CustomButtonDTO,CustomButtonFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_OWNER = "owner"
private static CustomButton _instance
void setInstance(CustomButton instance) {
_instance = instance
}
static CustomButton getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
CustomButtonDTO create(CustomButtonDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, CustomButtonDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
CustomButtonDTO update(CustomButtonDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, CustomButtonDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
CustomButtonDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, CustomButtonDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
CustomButtonDTO getDraft(CustomButtonDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, CustomButtonDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(CustomButtonDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
CustomButtonDTO save(CustomButtonDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, CustomButtonDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<CustomButtonDTO> fetchDefault(CustomButtonFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, CustomButtonDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<CustomButtonDTO> fetchAll(CustomButtonFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, CustomButtonDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<CustomButtonDTO> fetchCreateman(CustomButtonFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, CustomButtonDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<CustomButtonDTO> fetchOwner(CustomButtonFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, CustomButtonDTO.class)
}
}

View File

@@ -0,0 +1,202 @@
package cn.ibizlab.crm.crm.custombutton.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class CustomButtonDTO extends GroovyDTO<CustomButtonDTO> {
/**
* 「所属数据标识」
*/
@JsonProperty("owner_id")
String ownerId
/**
* 「所属数据对象」
*/
@JsonProperty("owner_type")
String ownerType
/**
* 「所属对象子类型」
*/
@JsonProperty("owner_subtype")
String ownerSubtype
/**
* 「URL」
*/
@JsonProperty("url")
String url
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「所属数据标识」值
* @param val
*/
CustomButtonDTO setOwnerId(String ownerId) {
this.ownerId = ownerId
return this
}
/**
* 设置「所属数据对象」值
* @param val
*/
CustomButtonDTO setOwnerType(String ownerType) {
this.ownerType = ownerType
return this
}
/**
* 设置「所属对象子类型」值
* @param val
*/
CustomButtonDTO setOwnerSubtype(String ownerSubtype) {
this.ownerSubtype = ownerSubtype
return this
}
/**
* 设置「URL」值
* @param val
*/
CustomButtonDTO setUrl(String url) {
this.url = url
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
CustomButtonDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
CustomButtonDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「描述」值
* @param val
*/
CustomButtonDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「标识」值
* @param val
*/
CustomButtonDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
CustomButtonDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
CustomButtonDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
CustomButtonDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
CustomButtonDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.custombutton.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class CustomButtonFilterDTO extends GroovyFilter<CustomButtonFilterDTO> {
}

View File

@@ -0,0 +1,328 @@
package cn.ibizlab.crm.crm.deal
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.deal.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[DEAL]运行时对象
* 此代码用户功能扩展代码
*
*/
class Deal extends GroovyDataEntityRuntime<Deal,DealDTO,DealFilterDTO> {
public static final String ACTION_ASYNC_ADDDEALTOWORKPROGRESS = "Async_addDealToWorkProgress"
public static final String ACTION_ADDDEALTOWORKPROGRESS = "addDealToWorkProgress"
public static final String ACTION_ADD_DEAL = "add_deal"
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String ACTION_RELATE_TASK_AND_MANEUVER = "relate_task_and_maneuver"
public static final String ACTION_STAGEPROBABILITY = "stageProbability"
public static final String DATASET_ALL = "All"
public static final String DATASET_BYACCOUNT = "ByAccount"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_CHART = "chart"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_DEAL_RELATION_TASK = "deal_relation_task"
public static final String DATASET_EXECUTOR = "executor"
public static final String DATASET_OWNER = "owner"
public static final String DATASET_RELATION = "relation"
public static final String DATASET_SUM = "sum"
public static final String DATASET_TARGET_RELATION = "target_relation"
private static Deal _instance
void setInstance(Deal instance) {
_instance = instance
}
static Deal getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
DealDTO create(DealDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, DealDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
DealDTO update(DealDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, DealDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
DealDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, DealDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
DealDTO getDraft(DealDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, DealDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(DealDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
DealDTO save(DealDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, DealDTO.class)
}
/**
* 行为:异步新建商机时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ASYNC_ADDDEALTOWORKPROGRESS)
def asyncAdddealtoworkprogress(DealDTO dto) throws Throwable {
return this.execute(ACTION_ASYNC_ADDDEALTOWORKPROGRESS, dto, Object.class)
}
/**
* 行为:新建商机时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADDDEALTOWORKPROGRESS)
def addDealToWorkProgress(DealDTO dto) throws Throwable {
this.execute(ACTION_ADDDEALTOWORKPROGRESS, dto, DealDTO.class)
}
/**
* 行为:添加商机 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_DEAL)
def addDeal(DealDTO dto) throws Throwable {
this.execute(ACTION_ADD_DEAL, dto, DealDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(DealDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, DealDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(DealDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, DealDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(DealDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, DealDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(DealDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, DealDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(DealDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, DealDTO.class)
}
/**
* 行为:关联任务和活动 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_RELATE_TASK_AND_MANEUVER)
def relateTaskAndManeuver(DealDTO dto) throws Throwable {
this.execute(ACTION_RELATE_TASK_AND_MANEUVER, dto, DealDTO.class)
}
/**
* 行为:获取阶段概率 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_STAGEPROBABILITY)
def stageProbability(DealDTO dto) throws Throwable {
return this.execute(ACTION_STAGEPROBABILITY, dto, DealDTO.class)
}
/**
* 数据集:全部商机 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<DealDTO> fetchAll(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, DealDTO.class)
}
/**
* 数据集:根据客户筛选 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_BYACCOUNT)
Page<DealDTO> fetchByAccount(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_BYACCOUNT, context, DealDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<DealDTO> fetchDefault(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, DealDTO.class)
}
/**
* 数据集:图表 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CHART)
Page<DealDTO> fetchChart(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_CHART, context, DealDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<DealDTO> fetchCreateman(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, DealDTO.class)
}
/**
* 数据集:商机关联的任务和活动 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEAL_RELATION_TASK)
Page<DealDTO> fetchDealRelationTask(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEAL_RELATION_TASK, context, DealDTO.class)
}
/**
* 数据集:执行人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_EXECUTOR)
Page<DealDTO> fetchExecutor(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_EXECUTOR, context, DealDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<DealDTO> fetchOwner(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, DealDTO.class)
}
/**
* 数据集:关联的商机 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_RELATION)
Page<DealDTO> fetchRelation(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_RELATION, context, DealDTO.class)
}
/**
* 数据集:金额汇总 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_SUM)
Page<DealDTO> fetchSum(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_SUM, context, DealDTO.class)
}
/**
* 数据集:被关联的商机信息 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TARGET_RELATION)
Page<DealDTO> fetchTargetRelation(DealFilterDTO context) throws Throwable {
return this.fetch(DATASET_TARGET_RELATION, context, DealDTO.class)
}
}

View File

@@ -0,0 +1,557 @@
package cn.ibizlab.crm.crm.deal.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.executor.dto.ExecutorDTO
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class DealDTO extends GroovyDTO<DealDTO> {
/**
* 「客户名称」
*/
@JsonProperty("account_name")
String accountName
/**
* 「执行人」
*/
@JsonProperty("executors")
List<ExecutorDTO> executors
/**
* 「是否有效」
*/
@JsonProperty("validity")
String validity
/**
* 「业务条线」
* 字典[行业]
*/
@JsonProperty("business_line")
String businessLine
/**
* 「最近评估时间」
*/
@JsonProperty("last_assess_time")
Timestamp lastAssessTime
/**
* 「商机阶段概率」
*/
@JsonProperty("stage_probability")
BigDecimal stageProbability
/**
* 「客户ID」
*/
@JsonProperty("account_id")
String accountId
/**
* 「金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「Change Log Time」
*/
@JsonProperty("change_log_time_s")
Timestamp changeLogTimeS
/**
* 「预计成交日期」
*/
@JsonProperty("closing_date")
Timestamp closingDate
/**
* 「联系人标识」
*/
@JsonProperty("contact_id")
String contactId
/**
* 「联系人名称」
*/
@JsonProperty("contact_name")
String contactName
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「商机名称」
*/
@JsonProperty("deal_name")
String dealName
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「预期收益」
*/
@JsonProperty("expected_revenue")
BigDecimal expectedRevenue
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「最近操作时间」
*/
@JsonProperty("last_activity_time")
Timestamp lastActivityTime
/**
* 「线索转换用时」
*/
@JsonProperty("lead_conversion_time")
Integer leadConversionTime
/**
* 「线索来源」
* 字典[线索来源]
*/
@JsonProperty("lead_source")
String leadSource
/**
* 「Locked」
* 字典[是否]
*/
@JsonProperty("locked_s")
Integer lockedS
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「下一步」
*/
@JsonProperty("next_step")
String nextStep
/**
* 「总销售时间」
*/
@JsonProperty("overall_sales_duration")
Integer overallSalesDuration
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「可能性」
*/
@JsonProperty("probability")
BigDecimal probability
/**
* 「丢单原因」
*/
@JsonProperty("reason_for_loss_s")
String reasonForLossS
/**
* 「销售周期的持续时间」
*/
@JsonProperty("sales_cycle_duration")
Integer salesCycleDuration
/**
* 「阶段标识」
*/
@JsonProperty("stage")
String stage
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「类型」
* 字典[类型]
*/
@JsonProperty("type")
String type
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「客户名称」值
* @param val
*/
DealDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「执行人」值
* @param val
*/
DealDTO setExecutors(List<ExecutorDTO> executors) {
this.executors = executors
return this
}
/**
* 设置「是否有效」值
* @param val
*/
DealDTO setValidity(String validity) {
this.validity = validity
return this
}
/**
* 设置「业务条线」值
* 字典[行业]
* @param val
*/
DealDTO setBusinessLine(String businessLine) {
this.businessLine = businessLine
return this
}
/**
* 设置「最近评估时间」值
* @param val
*/
DealDTO setLastAssessTime(Timestamp lastAssessTime) {
this.lastAssessTime = lastAssessTime
return this
}
/**
* 设置「商机阶段概率」值
* @param val
*/
DealDTO setStageProbability(BigDecimal stageProbability) {
this.stageProbability = stageProbability
return this
}
/**
* 设置「客户ID」值
* @param val
*/
DealDTO setAccountId(String accountId) {
this.accountId = accountId
return this
}
/**
* 设置「金额」值
* @param val
*/
DealDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「附件」值
* @param val
*/
DealDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「Change Log Time」值
* @param val
*/
DealDTO setChangeLogTimeS(Timestamp changeLogTimeS) {
this.changeLogTimeS = changeLogTimeS
return this
}
/**
* 设置「预计成交日期」值
* @param val
*/
DealDTO setClosingDate(Timestamp closingDate) {
this.closingDate = closingDate
return this
}
/**
* 设置「联系人标识」值
* @param val
*/
DealDTO setContactId(String contactId) {
this.contactId = contactId
return this
}
/**
* 设置「联系人名称」值
* @param val
*/
DealDTO setContactName(String contactName) {
this.contactName = contactName
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
DealDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
DealDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「商机名称」值
* @param val
*/
DealDTO setDealName(String dealName) {
this.dealName = dealName
return this
}
/**
* 设置「描述」值
* @param val
*/
DealDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「预期收益」值
* @param val
*/
DealDTO setExpectedRevenue(BigDecimal expectedRevenue) {
this.expectedRevenue = expectedRevenue
return this
}
/**
* 设置「标识」值
* @param val
*/
DealDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「最近操作时间」值
* @param val
*/
DealDTO setLastActivityTime(Timestamp lastActivityTime) {
this.lastActivityTime = lastActivityTime
return this
}
/**
* 设置「线索转换用时」值
* @param val
*/
DealDTO setLeadConversionTime(Integer leadConversionTime) {
this.leadConversionTime = leadConversionTime
return this
}
/**
* 设置「线索来源」值
* 字典[线索来源]
* @param val
*/
DealDTO setLeadSource(String leadSource) {
this.leadSource = leadSource
return this
}
/**
* 设置「Locked」值
* 字典[是否]
* @param val
*/
DealDTO setLockedS(Integer lockedS) {
this.lockedS = lockedS
return this
}
/**
* 设置「名称」值
* @param val
*/
DealDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「下一步」值
* @param val
*/
DealDTO setNextStep(String nextStep) {
this.nextStep = nextStep
return this
}
/**
* 设置「总销售时间」值
* @param val
*/
DealDTO setOverallSalesDuration(Integer overallSalesDuration) {
this.overallSalesDuration = overallSalesDuration
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
DealDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「可能性」值
* @param val
*/
DealDTO setProbability(BigDecimal probability) {
this.probability = probability
return this
}
/**
* 设置「丢单原因」值
* @param val
*/
DealDTO setReasonForLossS(String reasonForLossS) {
this.reasonForLossS = reasonForLossS
return this
}
/**
* 设置「销售周期的持续时间」值
* @param val
*/
DealDTO setSalesCycleDuration(Integer salesCycleDuration) {
this.salesCycleDuration = salesCycleDuration
return this
}
/**
* 设置「阶段标识」值
* @param val
*/
DealDTO setStage(String stage) {
this.stage = stage
return this
}
/**
* 设置「标签」值
* @param val
*/
DealDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「类型」值
* 字典[类型]
* @param val
*/
DealDTO setType(String type) {
this.type = type
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
DealDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
DealDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.deal.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class DealFilterDTO extends GroovyFilter<DealFilterDTO> {
}

View File

@@ -0,0 +1,131 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[添加商机]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AddDeal extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AddDeal.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[获取选择商机集合]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL1":
//执行逻辑节点[循环获取商机数据集]
executeLOOPSUBCALL1(iDELogicSession, iPSDELogicNode)
break
case "COPYPARAM1":
//执行逻辑节点[拷贝商机数据至中间对象]
executeCOPYPARAM1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[设置关联数据]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[创建关联数据]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取选择商机集合],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环获取商机数据集],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[拷贝商机数据至中间对象],逻辑类型[COPYPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeCOPYPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[设置关联数据],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[创建关联数据],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[新建商机时添加到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AddDealToWorkProgress extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AddDealToWorkProgress.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备工作进展参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[创建工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备工作进展参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[创建工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,75 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[异步添加商机到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AsyncDealToWorkProgres extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AsyncDealToWorkProgres.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[异步将线索更新到工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[异步将线索更新到工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,61 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[商机新建、更新通知]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class ChangeNotiy extends DELogicRuntime {
private static final Log log = LogFactory.getLog(ChangeNotiy.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DENOTIFY1":
//执行逻辑节点[实体通知]
executeDENOTIFY1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体通知],逻辑类型[DENOTIFY]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDENOTIFY1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[获取商机关联任务和活动]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class GetTaskAndManeuver extends DELogicRuntime {
private static final Log log = LogFactory.getLog(GetTaskAndManeuver.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[线索关联查询]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL1":
//执行逻辑节点[获取线索关联任务和活动]
executeRAWSQLCALL1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[线索关联查询],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取线索关联任务和活动],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,131 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[关联任务和活动]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class RelateTaskAndManeuver extends DELogicRuntime {
private static final Log log = LogFactory.getLog(RelateTaskAndManeuver.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "BINDPARAM1":
//执行逻辑节点[绑定参数]
executeBINDPARAM1(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL1":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL1(iDELogicSession, iPSDELogicNode)
break
case "RESETPARAM1":
//执行逻辑节点[重置关联对象]
executeRESETPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[活动填充关联对象属性]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[建立关联关系]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[绑定参数],逻辑类型[BINDPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBINDPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[重置关联对象],逻辑类型[RESETPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRESETPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[活动填充关联对象属性],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[建立关联关系],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[新建商机时生成阶段历史]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class ScCreatedealstagehis extends DELogicRuntime {
private static final Log log = LogFactory.getLog(ScCreatedealstagehis.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[阶段历史对象属性赋值]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[生成阶段历史数据]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[阶段历史对象属性赋值],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[生成阶段历史数据],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,103 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[商机阶段更新时生成历史]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class Scdealstagehis extends DELogicRuntime {
private static final Log log = LogFactory.getLog(Scdealstagehis.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL1":
//执行逻辑节点[查询历史阶段持续天数]
executeRAWSQLCALL1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[阶段历史对象属性赋值]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[生成阶段历史数据]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[查询历史阶段持续天数],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[阶段历史对象属性赋值],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[生成阶段历史数据],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,117 @@
package cn.ibizlab.crm.crm.deal.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[DEAL]处理逻辑[获取商机阶段概率]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class StageProbability extends DELogicRuntime {
private static final Log log = LogFactory.getLog(StageProbability.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,130 @@
package cn.ibizlab.crm.crm.dealhistory
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.dealhistory.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[DEAL_HISTORY]运行时对象
* 此代码用户功能扩展代码
*
*/
class DealHistory extends GroovyDataEntityRuntime<DealHistory,DealHistoryDTO,DealHistoryFilterDTO> {
public static final String DATASET_ALL = "ALL"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_CREATEMAN = "createman"
private static DealHistory _instance
void setInstance(DealHistory instance) {
_instance = instance
}
static DealHistory getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
DealHistoryDTO create(DealHistoryDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, DealHistoryDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
DealHistoryDTO update(DealHistoryDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, DealHistoryDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
DealHistoryDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, DealHistoryDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
DealHistoryDTO getDraft(DealHistoryDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, DealHistoryDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(DealHistoryDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
DealHistoryDTO save(DealHistoryDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, DealHistoryDTO.class)
}
/**
* 数据集:所有的历史阶段 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<DealHistoryDTO> fetchALL(DealHistoryFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, DealHistoryDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<DealHistoryDTO> fetchDefault(DealHistoryFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, DealHistoryDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<DealHistoryDTO> fetchCreateman(DealHistoryFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, DealHistoryDTO.class)
}
}

View File

@@ -0,0 +1,245 @@
package cn.ibizlab.crm.crm.dealhistory.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class DealHistoryDTO extends GroovyDTO<DealHistoryDTO> {
/**
* 「金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「预计成交日期」
*/
@JsonProperty("closing_date")
Timestamp closingDate
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「商机标识」
*/
@JsonProperty("deal_id")
String dealId
/**
* 「预期收益」
*/
@JsonProperty("expected_revenue")
BigDecimal expectedRevenue
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「最近操作时间」
*/
@JsonProperty("last_activity_time")
Timestamp lastActivityTime
/**
* 「移动到」
*/
@JsonProperty("moved_to_s")
String movedToS
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「可能性」
*/
@JsonProperty("probability")
Integer probability
/**
* 「阶段」
*/
@JsonProperty("stage")
String stage
/**
* 「阶段持续时间(日历天数)」
*/
@JsonProperty("stage_duration_calendar_days")
Integer stageDurationCalendarDays
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「金额」值
* @param val
*/
DealHistoryDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「预计成交日期」值
* @param val
*/
DealHistoryDTO setClosingDate(Timestamp closingDate) {
this.closingDate = closingDate
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
DealHistoryDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
DealHistoryDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「商机标识」值
* @param val
*/
DealHistoryDTO setDealId(String dealId) {
this.dealId = dealId
return this
}
/**
* 设置「预期收益」值
* @param val
*/
DealHistoryDTO setExpectedRevenue(BigDecimal expectedRevenue) {
this.expectedRevenue = expectedRevenue
return this
}
/**
* 设置「标识」值
* @param val
*/
DealHistoryDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「最近操作时间」值
* @param val
*/
DealHistoryDTO setLastActivityTime(Timestamp lastActivityTime) {
this.lastActivityTime = lastActivityTime
return this
}
/**
* 设置「移动到」值
* @param val
*/
DealHistoryDTO setMovedToS(String movedToS) {
this.movedToS = movedToS
return this
}
/**
* 设置「名称」值
* @param val
*/
DealHistoryDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「可能性」值
* @param val
*/
DealHistoryDTO setProbability(Integer probability) {
this.probability = probability
return this
}
/**
* 设置「阶段」值
* @param val
*/
DealHistoryDTO setStage(String stage) {
this.stage = stage
return this
}
/**
* 设置「阶段持续时间(日历天数)」值
* @param val
*/
DealHistoryDTO setStageDurationCalendarDays(Integer stageDurationCalendarDays) {
this.stageDurationCalendarDays = stageDurationCalendarDays
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
DealHistoryDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
DealHistoryDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.dealhistory.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class DealHistoryFilterDTO extends GroovyFilter<DealHistoryFilterDTO> {
}

View File

@@ -0,0 +1,119 @@
package cn.ibizlab.crm.crm.dealstage
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.dealstage.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[DEAL_STAGE]运行时对象
* 此代码用户功能扩展代码
*
*/
class DealStage extends GroovyDataEntityRuntime<DealStage,DealStageDTO,DealStageFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
private static DealStage _instance
void setInstance(DealStage instance) {
_instance = instance
}
static DealStage getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
DealStageDTO create(DealStageDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, DealStageDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
DealStageDTO update(DealStageDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, DealStageDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
DealStageDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, DealStageDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
DealStageDTO getDraft(DealStageDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, DealStageDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(DealStageDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
DealStageDTO save(DealStageDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, DealStageDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<DealStageDTO> fetchDefault(DealStageFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, DealStageDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<DealStageDTO> fetchAll(DealStageFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, DealStageDTO.class)
}
}

View File

@@ -0,0 +1,125 @@
package cn.ibizlab.crm.crm.dealstage.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class DealStageDTO extends GroovyDTO<DealStageDTO> {
/**
* 「默认阶段成交概率」
*/
@JsonProperty("probability")
BigDecimal probability
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「阶段名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「默认阶段成交概率」值
* @param val
*/
DealStageDTO setProbability(BigDecimal probability) {
this.probability = probability
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
DealStageDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
DealStageDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
DealStageDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「阶段名称」值
* @param val
*/
DealStageDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
DealStageDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
DealStageDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.dealstage.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class DealStageFilterDTO extends GroovyFilter<DealStageFilterDTO> {
}

View File

@@ -0,0 +1,218 @@
package cn.ibizlab.crm.crm.event
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.event.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[EVENT]运行时对象
* 此代码用户功能扩展代码
*
*/
class Event extends GroovyDataEntityRuntime<Event,EventDTO,EventFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_CLOSE = "close"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_INVITED = "invited"
public static final String DATASET_NOT_CLOSE = "not_close"
public static final String DATASET_OWNER = "owner"
private static Event _instance
void setInstance(Event instance) {
_instance = instance
}
static Event getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
EventDTO create(EventDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, EventDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
EventDTO update(EventDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, EventDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
EventDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, EventDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
EventDTO getDraft(EventDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, EventDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(EventDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
EventDTO save(EventDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, EventDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(EventDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, EventDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(EventDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, EventDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(EventDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, EventDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(EventDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, EventDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(EventDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, EventDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<EventDTO> fetchDefault(EventFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, EventDTO.class)
}
/**
* 数据集:关闭的 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CLOSE)
Page<EventDTO> fetchClose(EventFilterDTO context) throws Throwable {
return this.fetch(DATASET_CLOSE, context, EventDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<EventDTO> fetchCreateman(EventFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, EventDTO.class)
}
/**
* 数据集:已邀请的 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_INVITED)
Page<EventDTO> fetchInvited(EventFilterDTO context) throws Throwable {
return this.fetch(DATASET_INVITED, context, EventDTO.class)
}
/**
* 数据集:未关闭的 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_NOT_CLOSE)
Page<EventDTO> fetchNotClose(EventFilterDTO context) throws Throwable {
return this.fetch(DATASET_NOT_CLOSE, context, EventDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<EventDTO> fetchOwner(EventFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, EventDTO.class)
}
}

View File

@@ -0,0 +1,475 @@
package cn.ibizlab.crm.crm.event.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class EventDTO extends GroovyDTO<EventDTO> {
/**
* 「所属数据标识」
*/
@JsonProperty("owner_id")
String ownerId
/**
* 「所属数据对象」
*/
@JsonProperty("owner_type")
String ownerType
/**
* 「所属对象子类型」
*/
@JsonProperty("owner_subtype")
String ownerSubtype
/**
* 「全天」
* 字典[是否]
*/
@JsonProperty("all_day")
Integer allDay
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「签到地址」
*/
@JsonProperty("check_in_addres")
String checkInAddres
/**
* 「签到城市」
*/
@JsonProperty("check_in_city")
String checkInCity
/**
* 「签到评注」
*/
@JsonProperty("check_in_comment")
String checkInComment
/**
* 「签到国家」
*/
@JsonProperty("check_in_country")
String checkInCountry
/**
* 「签到省份」
*/
@JsonProperty("check_in_state")
String checkInState
/**
* 「签到状态」
*/
@JsonProperty("check_in_status")
String checkInStatus
/**
* 「签到地区」
*/
@JsonProperty("check_in_sub_locality")
String checkInSubLocality
/**
* 「签到时间」
*/
@JsonProperty("check_in_time")
Timestamp checkInTime
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「结束日期时间」
*/
@JsonProperty("end_date_time")
Timestamp endDateTime
/**
* 「标题」
*/
@JsonProperty("event_title")
String eventTitle
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「纬度」
*/
@JsonProperty("latitude")
BigDecimal latitude
/**
* 「经度」
*/
@JsonProperty("longitude")
BigDecimal longitude
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「参与者」
*/
@JsonProperty("participants")
BigInteger participants
/**
* 「起始日期时间」
*/
@JsonProperty("start_date_time")
Timestamp startDateTime
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「地点」
*/
@JsonProperty("venue")
String venue
/**
* 「邮政编码」
*/
@JsonProperty("zip_code")
String zipCode
/**
* 设置「所属数据标识」值
* @param val
*/
EventDTO setOwnerId(String ownerId) {
this.ownerId = ownerId
return this
}
/**
* 设置「所属数据对象」值
* @param val
*/
EventDTO setOwnerType(String ownerType) {
this.ownerType = ownerType
return this
}
/**
* 设置「所属对象子类型」值
* @param val
*/
EventDTO setOwnerSubtype(String ownerSubtype) {
this.ownerSubtype = ownerSubtype
return this
}
/**
* 设置「全天」值
* 字典[是否]
* @param val
*/
EventDTO setAllDay(Integer allDay) {
this.allDay = allDay
return this
}
/**
* 设置「附件」值
* @param val
*/
EventDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「签到地址」值
* @param val
*/
EventDTO setCheckInAddres(String checkInAddres) {
this.checkInAddres = checkInAddres
return this
}
/**
* 设置「签到城市」值
* @param val
*/
EventDTO setCheckInCity(String checkInCity) {
this.checkInCity = checkInCity
return this
}
/**
* 设置「签到评注」值
* @param val
*/
EventDTO setCheckInComment(String checkInComment) {
this.checkInComment = checkInComment
return this
}
/**
* 设置「签到国家」值
* @param val
*/
EventDTO setCheckInCountry(String checkInCountry) {
this.checkInCountry = checkInCountry
return this
}
/**
* 设置「签到省份」值
* @param val
*/
EventDTO setCheckInState(String checkInState) {
this.checkInState = checkInState
return this
}
/**
* 设置「签到状态」值
* @param val
*/
EventDTO setCheckInStatus(String checkInStatus) {
this.checkInStatus = checkInStatus
return this
}
/**
* 设置「签到地区」值
* @param val
*/
EventDTO setCheckInSubLocality(String checkInSubLocality) {
this.checkInSubLocality = checkInSubLocality
return this
}
/**
* 设置「签到时间」值
* @param val
*/
EventDTO setCheckInTime(Timestamp checkInTime) {
this.checkInTime = checkInTime
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
EventDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
EventDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「描述」值
* @param val
*/
EventDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「结束日期时间」值
* @param val
*/
EventDTO setEndDateTime(Timestamp endDateTime) {
this.endDateTime = endDateTime
return this
}
/**
* 设置「标题」值
* @param val
*/
EventDTO setEventTitle(String eventTitle) {
this.eventTitle = eventTitle
return this
}
/**
* 设置「标识」值
* @param val
*/
EventDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「纬度」值
* @param val
*/
EventDTO setLatitude(BigDecimal latitude) {
this.latitude = latitude
return this
}
/**
* 设置「经度」值
* @param val
*/
EventDTO setLongitude(BigDecimal longitude) {
this.longitude = longitude
return this
}
/**
* 设置「名称」值
* @param val
*/
EventDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
EventDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「参与者」值
* @param val
*/
EventDTO setParticipants(BigInteger participants) {
this.participants = participants
return this
}
/**
* 设置「起始日期时间」值
* @param val
*/
EventDTO setStartDateTime(Timestamp startDateTime) {
this.startDateTime = startDateTime
return this
}
/**
* 设置「标签」值
* @param val
*/
EventDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
EventDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
EventDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「地点」值
* @param val
*/
EventDTO setVenue(String venue) {
this.venue = venue
return this
}
/**
* 设置「邮政编码」值
* @param val
*/
EventDTO setZipCode(String zipCode) {
this.zipCode = zipCode
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.event.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class EventFilterDTO extends GroovyFilter<EventFilterDTO> {
}

View File

@@ -0,0 +1,130 @@
package cn.ibizlab.crm.crm.executor
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.executor.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[EXECUTOR]运行时对象
* 此代码用户功能扩展代码
*
*/
class Executor extends GroovyDataEntityRuntime<Executor,ExecutorDTO,ExecutorFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_LEAD_NOTIFY = "lead_notify"
public static final String DATASET_PROJECT_NOTIFY = "project_notify"
private static Executor _instance
void setInstance(Executor instance) {
_instance = instance
}
static Executor getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
ExecutorDTO create(ExecutorDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, ExecutorDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
ExecutorDTO update(ExecutorDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, ExecutorDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
ExecutorDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, ExecutorDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
ExecutorDTO getDraft(ExecutorDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, ExecutorDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(ExecutorDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
ExecutorDTO save(ExecutorDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, ExecutorDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<ExecutorDTO> fetchDefault(ExecutorFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, ExecutorDTO.class)
}
/**
* 数据集:线索跟踪人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_LEAD_NOTIFY)
Page<ExecutorDTO> fetchLeadNotify(ExecutorFilterDTO context) throws Throwable {
return this.fetch(DATASET_LEAD_NOTIFY, context, ExecutorDTO.class)
}
/**
* 数据集:订单执行人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_PROJECT_NOTIFY)
Page<ExecutorDTO> fetchProjectNotify(ExecutorFilterDTO context) throws Throwable {
return this.fetch(DATASET_PROJECT_NOTIFY, context, ExecutorDTO.class)
}
}

View File

@@ -0,0 +1,170 @@
package cn.ibizlab.crm.crm.executor.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ExecutorDTO extends GroovyDTO<ExecutorDTO> {
/**
* 「关联主体标识」
*/
@JsonProperty("principal_id")
String principalId
/**
* 「关联主体类型」
*/
@JsonProperty("principal_type")
String principalType
/**
* 「sysuserid」
*/
@JsonProperty("sysuserid")
String sysuserid
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「用户标识」
*/
@JsonProperty("user_id")
String userId
/**
* 设置「关联主体标识」值
* @param val
*/
ExecutorDTO setPrincipalId(String principalId) {
this.principalId = principalId
return this
}
/**
* 设置「关联主体类型」值
* @param val
*/
ExecutorDTO setPrincipalType(String principalType) {
this.principalType = principalType
return this
}
/**
* 设置「sysuserid」值
* @param val
*/
ExecutorDTO setSysuserid(String sysuserid) {
this.sysuserid = sysuserid
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
ExecutorDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
ExecutorDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
ExecutorDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
ExecutorDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
ExecutorDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
ExecutorDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「用户标识」值
* @param val
*/
ExecutorDTO setUserId(String userId) {
this.userId = userId
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.executor.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ExecutorFilterDTO extends GroovyFilter<ExecutorFilterDTO> {
}

View File

@@ -0,0 +1,163 @@
package cn.ibizlab.crm.crm.invoice
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.invoice.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[INVOICE]运行时对象
* 此代码用户功能扩展代码
*
*/
class Invoice extends GroovyDataEntityRuntime<Invoice,InvoiceDTO,InvoiceFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String DATASET_DEFAULT = "DEFAULT"
private static Invoice _instance
void setInstance(Invoice instance) {
_instance = instance
}
static Invoice getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
InvoiceDTO create(InvoiceDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, InvoiceDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
InvoiceDTO update(InvoiceDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, InvoiceDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
InvoiceDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, InvoiceDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
InvoiceDTO getDraft(InvoiceDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, InvoiceDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(InvoiceDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
InvoiceDTO save(InvoiceDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, InvoiceDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(InvoiceDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, InvoiceDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(InvoiceDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, InvoiceDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(InvoiceDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, InvoiceDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(InvoiceDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, InvoiceDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(InvoiceDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, InvoiceDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<InvoiceDTO> fetchDefault(InvoiceFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, InvoiceDTO.class)
}
}

View File

@@ -0,0 +1,533 @@
package cn.ibizlab.crm.crm.invoice.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class InvoiceDTO extends GroovyDTO<InvoiceDTO> {
/**
* 「调整」
*/
@JsonProperty("adjustment")
String adjustment
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「开单地址-城市」
*/
@JsonProperty("billing_city")
String billingCity
/**
* 「开单地址-邮编」
*/
@JsonProperty("billing_code")
String billingCode
/**
* 「开单地址-国家/地区」
*/
@JsonProperty("billing_country")
String billingCountry
/**
* 「开单地址-省/市」
*/
@JsonProperty("billing_state")
String billingState
/**
* 「开单地址-街道」
*/
@JsonProperty("billing_street")
String billingStreet
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「折扣」
*/
@JsonProperty("discount")
String discount
/**
* 「到期日期」
*/
@JsonProperty("due_date")
Timestamp dueDate
/**
* 「消费税」
*/
@JsonProperty("excise_duty")
String exciseDuty
/**
* 「累计」
*/
@JsonProperty("grand_total")
String grandTotal
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「发货单日期」
*/
@JsonProperty("invoice_date")
Timestamp invoiceDate
/**
* 「发货单编号」
*/
@JsonProperty("invoice_number")
String invoiceNumber
/**
* 「Locked」
* 字典[是否]
*/
@JsonProperty("locked_s")
Integer lockedS
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「采购订单」
*/
@JsonProperty("purchase_order")
String purchaseOrder
/**
* 「销售佣金」
*/
@JsonProperty("sales_commissio")
String salesCommissio
/**
* 「发货地址-城市」
*/
@JsonProperty("shipping_city")
String shippingCity
/**
* 「发货地址-邮编」
*/
@JsonProperty("shipping_code")
String shippingCode
/**
* 「发货地址-国家/地区」
*/
@JsonProperty("shipping_country")
String shippingCountry
/**
* 「发货地址-省/市」
*/
@JsonProperty("shipping_state")
String shippingState
/**
* 「发货地址-街道」
*/
@JsonProperty("shipping_street")
String shippingStreet
/**
* 「状态」
*/
@JsonProperty("status")
String status
/**
* 「小计」
*/
@JsonProperty("sub_total")
String subTotal
/**
* 「主题」
*/
@JsonProperty("subject")
String subject
/**
* 「标签」
*/
@JsonProperty("tag")
String tag
/**
* 「税」
*/
@JsonProperty("tax")
String tax
/**
* 「条款及条件」
*/
@JsonProperty("terms_and_conditions")
String termsAndConditions
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「调整」值
* @param val
*/
InvoiceDTO setAdjustment(String adjustment) {
this.adjustment = adjustment
return this
}
/**
* 设置「附件」值
* @param val
*/
InvoiceDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「开单地址-城市」值
* @param val
*/
InvoiceDTO setBillingCity(String billingCity) {
this.billingCity = billingCity
return this
}
/**
* 设置「开单地址-邮编」值
* @param val
*/
InvoiceDTO setBillingCode(String billingCode) {
this.billingCode = billingCode
return this
}
/**
* 设置「开单地址-国家/地区」值
* @param val
*/
InvoiceDTO setBillingCountry(String billingCountry) {
this.billingCountry = billingCountry
return this
}
/**
* 设置「开单地址-省/市」值
* @param val
*/
InvoiceDTO setBillingState(String billingState) {
this.billingState = billingState
return this
}
/**
* 设置「开单地址-街道」值
* @param val
*/
InvoiceDTO setBillingStreet(String billingStreet) {
this.billingStreet = billingStreet
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
InvoiceDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
InvoiceDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「描述」值
* @param val
*/
InvoiceDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「折扣」值
* @param val
*/
InvoiceDTO setDiscount(String discount) {
this.discount = discount
return this
}
/**
* 设置「到期日期」值
* @param val
*/
InvoiceDTO setDueDate(Timestamp dueDate) {
this.dueDate = dueDate
return this
}
/**
* 设置「消费税」值
* @param val
*/
InvoiceDTO setExciseDuty(String exciseDuty) {
this.exciseDuty = exciseDuty
return this
}
/**
* 设置「累计」值
* @param val
*/
InvoiceDTO setGrandTotal(String grandTotal) {
this.grandTotal = grandTotal
return this
}
/**
* 设置「标识」值
* @param val
*/
InvoiceDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「发货单日期」值
* @param val
*/
InvoiceDTO setInvoiceDate(Timestamp invoiceDate) {
this.invoiceDate = invoiceDate
return this
}
/**
* 设置「发货单编号」值
* @param val
*/
InvoiceDTO setInvoiceNumber(String invoiceNumber) {
this.invoiceNumber = invoiceNumber
return this
}
/**
* 设置「Locked」值
* 字典[是否]
* @param val
*/
InvoiceDTO setLockedS(Integer lockedS) {
this.lockedS = lockedS
return this
}
/**
* 设置「名称」值
* @param val
*/
InvoiceDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「采购订单」值
* @param val
*/
InvoiceDTO setPurchaseOrder(String purchaseOrder) {
this.purchaseOrder = purchaseOrder
return this
}
/**
* 设置「销售佣金」值
* @param val
*/
InvoiceDTO setSalesCommissio(String salesCommissio) {
this.salesCommissio = salesCommissio
return this
}
/**
* 设置「发货地址-城市」值
* @param val
*/
InvoiceDTO setShippingCity(String shippingCity) {
this.shippingCity = shippingCity
return this
}
/**
* 设置「发货地址-邮编」值
* @param val
*/
InvoiceDTO setShippingCode(String shippingCode) {
this.shippingCode = shippingCode
return this
}
/**
* 设置「发货地址-国家/地区」值
* @param val
*/
InvoiceDTO setShippingCountry(String shippingCountry) {
this.shippingCountry = shippingCountry
return this
}
/**
* 设置「发货地址-省/市」值
* @param val
*/
InvoiceDTO setShippingState(String shippingState) {
this.shippingState = shippingState
return this
}
/**
* 设置「发货地址-街道」值
* @param val
*/
InvoiceDTO setShippingStreet(String shippingStreet) {
this.shippingStreet = shippingStreet
return this
}
/**
* 设置「状态」值
* @param val
*/
InvoiceDTO setStatus(String status) {
this.status = status
return this
}
/**
* 设置「小计」值
* @param val
*/
InvoiceDTO setSubTotal(String subTotal) {
this.subTotal = subTotal
return this
}
/**
* 设置「主题」值
* @param val
*/
InvoiceDTO setSubject(String subject) {
this.subject = subject
return this
}
/**
* 设置「标签」值
* @param val
*/
InvoiceDTO setTag(String tag) {
this.tag = tag
return this
}
/**
* 设置「税」值
* @param val
*/
InvoiceDTO setTax(String tax) {
this.tax = tax
return this
}
/**
* 设置「条款及条件」值
* @param val
*/
InvoiceDTO setTermsAndConditions(String termsAndConditions) {
this.termsAndConditions = termsAndConditions
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
InvoiceDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
InvoiceDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.invoice.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class InvoiceFilterDTO extends GroovyFilter<InvoiceFilterDTO> {
}

View File

@@ -0,0 +1,108 @@
package cn.ibizlab.crm.crm.item
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.item.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[ITEM]运行时对象
* 此代码用户功能扩展代码
*
*/
class Item extends GroovyDataEntityRuntime<Item,ItemDTO,ItemFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
private static Item _instance
void setInstance(Item instance) {
_instance = instance
}
static Item getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
ItemDTO create(ItemDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, ItemDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
ItemDTO update(ItemDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, ItemDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
ItemDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, ItemDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
ItemDTO getDraft(ItemDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, ItemDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(ItemDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
ItemDTO save(ItemDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, ItemDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<ItemDTO> fetchDefault(ItemFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, ItemDTO.class)
}
}

View File

@@ -0,0 +1,126 @@
package cn.ibizlab.crm.crm.item.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ItemDTO extends GroovyDTO<ItemDTO> {
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「附件」值
* @param val
*/
ItemDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
ItemDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
ItemDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
ItemDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
ItemDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
ItemDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
ItemDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.item.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ItemFilterDTO extends GroovyFilter<ItemFilterDTO> {
}

View File

@@ -0,0 +1,295 @@
package cn.ibizlab.crm.crm.lead
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.lead.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[LEAD]运行时对象
* 此代码用户功能扩展代码
*
*/
class Lead extends GroovyDataEntityRuntime<Lead,LeadDTO,LeadFilterDTO> {
public static final String ACTION_ASYNC_ADDLEADTOWORKPROGRESS = "Async_addLeadtoWorkProgress"
public static final String ACTION_ADDLEADTOWORKPROGRESS = "addLeadtoWorkProgress"
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_LEADTOBEDEAL = "leadToBeDeal"
public static final String ACTION_LEADTODEAL = "leadToDeal"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String ACTION_RELATE_TASK_AND_MANEUVER = "relate_task_and_maneuver"
public static final String DATASET_TREE = "tree"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_EXECUTOR = "executor"
public static final String DATASET_LEAD_RELATION_TASK = "lead_relation_task"
public static final String DATASET_OWNER = "owner"
public static final String DATASET_TARGET_RELATION = "target_relation"
private static Lead _instance
void setInstance(Lead instance) {
_instance = instance
}
static Lead getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
LeadDTO create(LeadDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, LeadDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
LeadDTO update(LeadDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, LeadDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
LeadDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, LeadDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
LeadDTO getDraft(LeadDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, LeadDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(LeadDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
LeadDTO save(LeadDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, LeadDTO.class)
}
/**
* 行为:异步新建线索时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ASYNC_ADDLEADTOWORKPROGRESS)
def asyncAddleadtoworkprogress(LeadDTO dto) throws Throwable {
return this.execute(ACTION_ASYNC_ADDLEADTOWORKPROGRESS, dto, Object.class)
}
/**
* 行为:新建线索时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADDLEADTOWORKPROGRESS)
def addLeadtoWorkProgress(LeadDTO dto) throws Throwable {
this.execute(ACTION_ADDLEADTOWORKPROGRESS, dto, LeadDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(LeadDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, LeadDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(LeadDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, LeadDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(LeadDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, LeadDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(LeadDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, LeadDTO.class)
}
/**
* 行为:派生商机 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_LEADTOBEDEAL)
def leadToBeDeal(LeadDTO dto) throws Throwable {
this.execute(ACTION_LEADTOBEDEAL, dto, LeadDTO.class)
}
/**
* 行为:线索转商机 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_LEADTODEAL)
def leadToDeal(LeadDTO dto) throws Throwable {
this.execute(ACTION_LEADTODEAL, dto, LeadDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(LeadDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, LeadDTO.class)
}
/**
* 行为:关联任务和活动 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_RELATE_TASK_AND_MANEUVER)
def relateTaskAndManeuver(LeadDTO dto) throws Throwable {
this.execute(ACTION_RELATE_TASK_AND_MANEUVER, dto, LeadDTO.class)
}
/**
* 数据集:树表格 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TREE)
Page<LeadDTO> fetchDataSet2(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_TREE, context, LeadDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<LeadDTO> fetchDefault(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, LeadDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<LeadDTO> fetchAll(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, LeadDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<LeadDTO> fetchCreateman(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, LeadDTO.class)
}
/**
* 数据集:执行人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_EXECUTOR)
Page<LeadDTO> fetchExecutor(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_EXECUTOR, context, LeadDTO.class)
}
/**
* 数据集:线索关联的任务和活动 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_LEAD_RELATION_TASK)
Page<LeadDTO> fetchLeadRelationTask(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_LEAD_RELATION_TASK, context, LeadDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<LeadDTO> fetchOwner(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, LeadDTO.class)
}
/**
* 数据集:被关联的数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TARGET_RELATION)
Page<LeadDTO> fetchTargetRelation(LeadFilterDTO context) throws Throwable {
return this.fetch(DATASET_TARGET_RELATION, context, LeadDTO.class)
}
}

View File

@@ -0,0 +1,662 @@
package cn.ibizlab.crm.crm.lead.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.executor.dto.ExecutorDTO
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class LeadDTO extends GroovyDTO<LeadDTO> {
/**
* 「跟踪人」
*/
@JsonProperty("executors")
List<ExecutorDTO> executors
/**
* 「客户名称」
*/
@JsonProperty("account_name")
String accountName
/**
* 「父线索」
*/
@JsonProperty("pname")
String pname
/**
* 「最近评估时间」
*/
@JsonProperty("last_assess_time")
Timestamp lastAssessTime
/**
* 「客户标识」
*/
@JsonProperty("account_id")
String accountId
/**
* 「年收入」
*/
@JsonProperty("annual_revenue")
String annualRevenue
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「城市」
*/
@JsonProperty("city")
String city
/**
* 「公司」
*/
@JsonProperty("company")
String company
/**
* 「转换的日期时间」
*/
@JsonProperty("converted_date_time")
Timestamp convertedDateTime
/**
* 「为“已转换”」
* 字典[是否]
*/
@JsonProperty("converted_s")
Integer convertedS
/**
* 「国家/地区」
*/
@JsonProperty("country")
String country
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「描述」
*/
@JsonProperty("description")
String description
/**
* 「职位/职称」
*/
@JsonProperty("designation")
String designation
/**
* 「电子邮件」
*/
@JsonProperty("email")
String email
/**
* 「不发营销邮件」
* 字典[是否]
*/
@JsonProperty("email_opt_out")
Integer emailOptOut
/**
* 「充实状态」
*/
@JsonProperty("enrich_status_s")
String enrichStatusS
/**
* 「名字」
*/
@JsonProperty("first_name")
String firstName
/**
* 「联系人姓名」
*/
@JsonProperty("full_name")
String fullName
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「姓氏」
*/
@JsonProperty("last_name")
String lastName
/**
* 「线索转换用时」
*/
@JsonProperty("lead_conversion_time")
Integer leadConversionTime
/**
* 「线索来源」
* 字典[线索来源]
*/
@JsonProperty("lead_source")
String leadSource
/**
* 「线索状态」
* 字典[线索状态]
*/
@JsonProperty("lead_status")
String leadStatus
/**
* 「手机」
*/
@JsonProperty("mobile")
String mobile
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「员工数」
*/
@JsonProperty("no_of_employees")
Integer noOfEmployees
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「父线索标识」
*/
@JsonProperty("pid")
String pid
/**
* 「称呼」
*/
@JsonProperty("salutation")
String salutation
/**
* 「备用邮箱」
*/
@JsonProperty("secondary_email")
String secondaryEmail
/**
* 「Skype lD」
*/
@JsonProperty("skype_id")
String skypeId
/**
* 「省/市」
*/
@JsonProperty("state")
String state
/**
* 「街道」
*/
@JsonProperty("street")
String street
/**
* 「主题」
*/
@JsonProperty("subject")
String subject
/**
* 「退订的方式」
*/
@JsonProperty("unsubscribed_mode")
String unsubscribedMode
/**
* 「退订的时间」
*/
@JsonProperty("unsubscribed_time")
Timestamp unsubscribedTime
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「邮编」
*/
@JsonProperty("zip_code")
String zipCode
/**
* 设置「跟踪人」值
* @param val
*/
LeadDTO setExecutors(List<ExecutorDTO> executors) {
this.executors = executors
return this
}
/**
* 设置「客户名称」值
* @param val
*/
LeadDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「父线索」值
* @param val
*/
LeadDTO setPname(String pname) {
this.pname = pname
return this
}
/**
* 设置「最近评估时间」值
* @param val
*/
LeadDTO setLastAssessTime(Timestamp lastAssessTime) {
this.lastAssessTime = lastAssessTime
return this
}
/**
* 设置「客户标识」值
* @param val
*/
LeadDTO setAccountId(String accountId) {
this.accountId = accountId
return this
}
/**
* 设置「年收入」值
* @param val
*/
LeadDTO setAnnualRevenue(String annualRevenue) {
this.annualRevenue = annualRevenue
return this
}
/**
* 设置「附件」值
* @param val
*/
LeadDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「城市」值
* @param val
*/
LeadDTO setCity(String city) {
this.city = city
return this
}
/**
* 设置「公司」值
* @param val
*/
LeadDTO setCompany(String company) {
this.company = company
return this
}
/**
* 设置「转换的日期时间」值
* @param val
*/
LeadDTO setConvertedDateTime(Timestamp convertedDateTime) {
this.convertedDateTime = convertedDateTime
return this
}
/**
* 设置「为“已转换”」值
* 字典[是否]
* @param val
*/
LeadDTO setConvertedS(Integer convertedS) {
this.convertedS = convertedS
return this
}
/**
* 设置「国家/地区」值
* @param val
*/
LeadDTO setCountry(String country) {
this.country = country
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
LeadDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
LeadDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「描述」值
* @param val
*/
LeadDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「职位/职称」值
* @param val
*/
LeadDTO setDesignation(String designation) {
this.designation = designation
return this
}
/**
* 设置「电子邮件」值
* @param val
*/
LeadDTO setEmail(String email) {
this.email = email
return this
}
/**
* 设置「不发营销邮件」值
* 字典[是否]
* @param val
*/
LeadDTO setEmailOptOut(Integer emailOptOut) {
this.emailOptOut = emailOptOut
return this
}
/**
* 设置「充实状态」值
* @param val
*/
LeadDTO setEnrichStatusS(String enrichStatusS) {
this.enrichStatusS = enrichStatusS
return this
}
/**
* 设置「名字」值
* @param val
*/
LeadDTO setFirstName(String firstName) {
this.firstName = firstName
return this
}
/**
* 设置「联系人姓名」值
* @param val
*/
LeadDTO setFullName(String fullName) {
this.fullName = fullName
return this
}
/**
* 设置「标识」值
* @param val
*/
LeadDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「姓氏」值
* @param val
*/
LeadDTO setLastName(String lastName) {
this.lastName = lastName
return this
}
/**
* 设置「线索转换用时」值
* @param val
*/
LeadDTO setLeadConversionTime(Integer leadConversionTime) {
this.leadConversionTime = leadConversionTime
return this
}
/**
* 设置「线索来源」值
* 字典[线索来源]
* @param val
*/
LeadDTO setLeadSource(String leadSource) {
this.leadSource = leadSource
return this
}
/**
* 设置「线索状态」值
* 字典[线索状态]
* @param val
*/
LeadDTO setLeadStatus(String leadStatus) {
this.leadStatus = leadStatus
return this
}
/**
* 设置「手机」值
* @param val
*/
LeadDTO setMobile(String mobile) {
this.mobile = mobile
return this
}
/**
* 设置「名称」值
* @param val
*/
LeadDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「员工数」值
* @param val
*/
LeadDTO setNoOfEmployees(Integer noOfEmployees) {
this.noOfEmployees = noOfEmployees
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
LeadDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「父线索标识」值
* @param val
*/
LeadDTO setPid(String pid) {
this.pid = pid
return this
}
/**
* 设置「称呼」值
* @param val
*/
LeadDTO setSalutation(String salutation) {
this.salutation = salutation
return this
}
/**
* 设置「备用邮箱」值
* @param val
*/
LeadDTO setSecondaryEmail(String secondaryEmail) {
this.secondaryEmail = secondaryEmail
return this
}
/**
* 设置「Skype lD」值
* @param val
*/
LeadDTO setSkypeId(String skypeId) {
this.skypeId = skypeId
return this
}
/**
* 设置「省/市」值
* @param val
*/
LeadDTO setState(String state) {
this.state = state
return this
}
/**
* 设置「街道」值
* @param val
*/
LeadDTO setStreet(String street) {
this.street = street
return this
}
/**
* 设置「主题」值
* @param val
*/
LeadDTO setSubject(String subject) {
this.subject = subject
return this
}
/**
* 设置「退订的方式」值
* @param val
*/
LeadDTO setUnsubscribedMode(String unsubscribedMode) {
this.unsubscribedMode = unsubscribedMode
return this
}
/**
* 设置「退订的时间」值
* @param val
*/
LeadDTO setUnsubscribedTime(Timestamp unsubscribedTime) {
this.unsubscribedTime = unsubscribedTime
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
LeadDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
LeadDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「邮编」值
* @param val
*/
LeadDTO setZipCode(String zipCode) {
this.zipCode = zipCode
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.lead.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class LeadFilterDTO extends GroovyFilter<LeadFilterDTO> {
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[新建线索时添加到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AddLeadtoWorkProgress extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AddLeadtoWorkProgress.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备工作进展参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[创建工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备工作进展参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[创建工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,75 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[异步添加线索到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AsyncLeadtoWorkProgres extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AsyncLeadtoWorkProgres.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[异步将线索更新到工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[异步将线索更新到工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[新建线索前加载跟踪人]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class DefaultExecutor extends DELogicRuntime {
private static final Log log = LogFactory.getLog(DefaultExecutor.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[默认执行人]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[默认执行人],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[获取线索关联任务和活动]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class GetTaskAndManeuver extends DELogicRuntime {
private static final Log log = LogFactory.getLog(GetTaskAndManeuver.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[线索关联查询]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL1":
//执行逻辑节点[获取线索关联任务和活动]
executeRAWSQLCALL1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[线索关联查询],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取线索关联任务和活动],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[派生商机]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class LeadToBeDeal extends DELogicRuntime {
private static final Log log = LogFactory.getLog(LeadToBeDeal.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DEACTION2":
//执行逻辑节点[根据线索id查询线索]
executeDEACTION2(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[线索属性值转换为商机属性值]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[根据线索id查询线索],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[线索属性值转换为商机属性值],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,173 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[线索转商机]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class LeadToDeal extends DELogicRuntime {
private static final Log log = LogFactory.getLog(LeadToDeal.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[线索属性值转换为商机属性值]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[创建商机]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION2":
//执行逻辑节点[根据线索id查询线索]
executeDEACTION2(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL3":
//执行逻辑节点[附件线索转商机]
executeRAWSQLCALL3(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL1":
//执行逻辑节点[relation中线索转为商机]
executeRAWSQLCALL1(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL2":
//执行逻辑节点[进展评估线索转商机]
executeRAWSQLCALL2(iDELogicSession, iPSDELogicNode)
break
case "RAWSQLCALL4":
//执行逻辑节点[更新工作进展数据]
executeRAWSQLCALL4(iDELogicSession, iPSDELogicNode)
break
case "DEACTION3":
//执行逻辑节点[删除线索]
executeDEACTION3(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[线索属性值转换为商机属性值],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[创建商机],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[根据线索id查询线索],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[附件线索转商机],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[relation中线索转为商机],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[进展评估线索转商机],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[更新工作进展数据],逻辑类型[RAWSQLCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRAWSQLCALL4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[删除线索],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,131 @@
package cn.ibizlab.crm.crm.lead.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[LEAD]处理逻辑[关联任务和活动]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class RelateTaskAndManeuver extends DELogicRuntime {
private static final Log log = LogFactory.getLog(RelateTaskAndManeuver.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "BINDPARAM1":
//执行逻辑节点[绑定参数]
executeBINDPARAM1(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL1":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL1(iDELogicSession, iPSDELogicNode)
break
case "RESETPARAM1":
//执行逻辑节点[重置关联对象]
executeRESETPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[活动填充关联对象属性]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[建立关联关系]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[绑定参数],逻辑类型[BINDPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBINDPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[重置关联对象],逻辑类型[RESETPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRESETPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[活动填充关联对象属性],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[建立关联关系],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,163 @@
package cn.ibizlab.crm.crm.maneuver
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.maneuver.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[MANEUVER]运行时对象
* 此代码用户功能扩展代码
*
*/
class Maneuver extends GroovyDataEntityRuntime<Maneuver,ManeuverDTO,ManeuverFilterDTO> {
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String DATASET_DEFAULT = "DEFAULT"
private static Maneuver _instance
void setInstance(Maneuver instance) {
_instance = instance
}
static Maneuver getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
ManeuverDTO create(ManeuverDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, ManeuverDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
ManeuverDTO update(ManeuverDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, ManeuverDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
ManeuverDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, ManeuverDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
ManeuverDTO getDraft(ManeuverDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, ManeuverDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(ManeuverDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
ManeuverDTO save(ManeuverDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, ManeuverDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(ManeuverDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, ManeuverDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(ManeuverDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, ManeuverDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(ManeuverDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, ManeuverDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(ManeuverDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, ManeuverDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(ManeuverDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, ManeuverDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<ManeuverDTO> fetchDefault(ManeuverFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, ManeuverDTO.class)
}
}

View File

@@ -0,0 +1,143 @@
package cn.ibizlab.crm.crm.maneuver.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ManeuverDTO extends GroovyDTO<ManeuverDTO> {
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「附件」值
* @param val
*/
ManeuverDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
ManeuverDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
ManeuverDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
ManeuverDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
ManeuverDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
ManeuverDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
ManeuverDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
ManeuverDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.maneuver.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class ManeuverFilterDTO extends GroovyFilter<ManeuverFilterDTO> {
}

View File

@@ -0,0 +1,163 @@
package cn.ibizlab.crm.crm.noteattach
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.noteattach.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[NOTE_ATTACH]运行时对象
* 此代码用户功能扩展代码
*
*/
class NoteAttach extends GroovyDataEntityRuntime<NoteAttach,NoteAttachDTO,NoteAttachFilterDTO> {
public static final String ACTION_ASYNC_EVALUATETOWORKPROGRESS = "Async_evaluateToWorkProgress"
public static final String ACTION_EVALUATETOWORKPROGRESS = "evaluateToWorkProgress"
public static final String DATASET_BYOWNER = "ByOwner"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_CREATEMAN = "createman"
private static NoteAttach _instance
void setInstance(NoteAttach instance) {
_instance = instance
}
static NoteAttach getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
NoteAttachDTO create(NoteAttachDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, NoteAttachDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
NoteAttachDTO update(NoteAttachDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, NoteAttachDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
NoteAttachDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, NoteAttachDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
NoteAttachDTO getDraft(NoteAttachDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, NoteAttachDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(NoteAttachDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
NoteAttachDTO save(NoteAttachDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, NoteAttachDTO.class)
}
/**
* 行为:异步新建评估时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ASYNC_EVALUATETOWORKPROGRESS)
def asyncEvaluatetoworkprogress(NoteAttachDTO dto) throws Throwable {
return this.execute(ACTION_ASYNC_EVALUATETOWORKPROGRESS, dto, Object.class)
}
/**
* 行为:新建评估时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_EVALUATETOWORKPROGRESS)
def evaluateToWorkProgress(NoteAttachDTO dto) throws Throwable {
this.execute(ACTION_EVALUATETOWORKPROGRESS, dto, NoteAttachDTO.class)
}
/**
* 数据集:ByOwner 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_BYOWNER)
Page<NoteAttachDTO> fetchByOwner(NoteAttachFilterDTO context) throws Throwable {
return this.fetch(DATASET_BYOWNER, context, NoteAttachDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<NoteAttachDTO> fetchDefault(NoteAttachFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, NoteAttachDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<NoteAttachDTO> fetchAll(NoteAttachFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, NoteAttachDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<NoteAttachDTO> fetchCreateman(NoteAttachFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, NoteAttachDTO.class)
}
}

View File

@@ -0,0 +1,185 @@
package cn.ibizlab.crm.crm.noteattach.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class NoteAttachDTO extends GroovyDTO<NoteAttachDTO> {
/**
* 「备注主体标识」
*/
@JsonProperty("principal_id")
String principalId
/**
* 「备注主体名称」
*/
@JsonProperty("principal_name")
String principalName
/**
* 「所属数据对象」
*/
@JsonProperty("owner_type")
String ownerType
/**
* 「备注主体类型」
*/
@JsonProperty("principal_type")
String principalType
/**
* 「内容」
*/
@JsonProperty("content")
String content
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「备注主体标识」值
* @param val
*/
NoteAttachDTO setPrincipalId(String principalId) {
this.principalId = principalId
return this
}
/**
* 设置「备注主体名称」值
* @param val
*/
NoteAttachDTO setPrincipalName(String principalName) {
this.principalName = principalName
return this
}
/**
* 设置「所属数据对象」值
* @param val
*/
NoteAttachDTO setOwnerType(String ownerType) {
this.ownerType = ownerType
return this
}
/**
* 设置「备注主体类型」值
* @param val
*/
NoteAttachDTO setPrincipalType(String principalType) {
this.principalType = principalType
return this
}
/**
* 设置「内容」值
* @param val
*/
NoteAttachDTO setContent(String content) {
this.content = content
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
NoteAttachDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
NoteAttachDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
NoteAttachDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
NoteAttachDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
NoteAttachDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
NoteAttachDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.noteattach.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class NoteAttachFilterDTO extends GroovyFilter<NoteAttachFilterDTO> {
}

View File

@@ -0,0 +1,117 @@
package cn.ibizlab.crm.crm.noteattach.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[NOTE_ATTACH]处理逻辑[新建、更新进展评估后通知]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AssessNotify extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AssessNotify.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DENOTIFY1":
//执行逻辑节点[实体通知]
executeDENOTIFY1(iDELogicSession, iPSDELogicNode)
break
case "DENOTIFY2":
//执行逻辑节点[实体通知]
executeDENOTIFY2(iDELogicSession, iPSDELogicNode)
break
case "DENOTIFY3":
//执行逻辑节点[实体通知]
executeDENOTIFY3(iDELogicSession, iPSDELogicNode)
break
case "DENOTIFY4":
//执行逻辑节点[实体通知]
executeDENOTIFY4(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体通知],逻辑类型[DENOTIFY]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDENOTIFY1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体通知],逻辑类型[DENOTIFY]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDENOTIFY2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体通知],逻辑类型[DENOTIFY]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDENOTIFY3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体通知],逻辑类型[DENOTIFY]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDENOTIFY4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,75 @@
package cn.ibizlab.crm.crm.noteattach.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[NOTE_ATTACH]处理逻辑[异步添加评估到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AsyncevaluateToWorkProgress extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AsyncevaluateToWorkProgress.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[异步将评估更新到工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[异步将评估更新到工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.noteattach.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[NOTE_ATTACH]处理逻辑[新建评估时添加到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class EvaluateToWorkProgress extends DELogicRuntime {
private static final Log log = LogFactory.getLog(EvaluateToWorkProgress.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备工作进展参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[创建工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备工作进展参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[创建工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,159 @@
package cn.ibizlab.crm.crm.noteattach.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[NOTE_ATTACH]处理逻辑[更新最近评估时间]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class UpdateAccessTime extends DELogicRuntime {
private static final Log log = LogFactory.getLog(UpdateAccessTime.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[获取最新时间]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[获取最新时间]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM3":
//执行逻辑节点[获取最新时间]
executePREPAREPARAM3(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM4":
//执行逻辑节点[获取最新时间]
executePREPAREPARAM4(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[更新订单最近评估时间]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION2":
//执行逻辑节点[更新线索最近评估时间]
executeDEACTION2(iDELogicSession, iPSDELogicNode)
break
case "DEACTION3":
//执行逻辑节点[更新商机最近评估时间]
executeDEACTION3(iDELogicSession, iPSDELogicNode)
break
case "DEACTION4":
//执行逻辑节点[实体行为]
executeDEACTION4(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取最新时间],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取最新时间],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取最新时间],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[获取最新时间],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[更新订单最近评估时间],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[更新线索最近评估时间],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[更新商机最近评估时间],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,119 @@
package cn.ibizlab.crm.crm.orderallocate
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.orderallocate.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[ORDER_ALLOCATE]运行时对象
* 此代码用户功能扩展代码
*
*/
class OrderAllocate extends GroovyDataEntityRuntime<OrderAllocate,OrderAllocateDTO,OrderAllocateFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
private static OrderAllocate _instance
void setInstance(OrderAllocate instance) {
_instance = instance
}
static OrderAllocate getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
OrderAllocateDTO create(OrderAllocateDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, OrderAllocateDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
OrderAllocateDTO update(OrderAllocateDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, OrderAllocateDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
OrderAllocateDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, OrderAllocateDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
OrderAllocateDTO getDraft(OrderAllocateDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, OrderAllocateDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(OrderAllocateDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
OrderAllocateDTO save(OrderAllocateDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, OrderAllocateDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<OrderAllocateDTO> fetchDefault(OrderAllocateFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, OrderAllocateDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<OrderAllocateDTO> fetchAll(OrderAllocateFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, OrderAllocateDTO.class)
}
}

View File

@@ -0,0 +1,202 @@
package cn.ibizlab.crm.crm.orderallocate.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class OrderAllocateDTO extends GroovyDTO<OrderAllocateDTO> {
/**
* 「所属数据标识」
*/
@JsonProperty("owner_id")
String ownerId
/**
* 「所属数据对象」
*/
@JsonProperty("owner_type")
String ownerType
/**
* 「用户名称」
*/
@JsonProperty("user_name")
String userName
/**
* 「分配比率」
*/
@JsonProperty("ratio")
BigDecimal ratio
/**
* 「金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「用户标识」
* 字典[所有者]
*/
@JsonProperty("user_id")
String userId
/**
* 设置「所属数据标识」值
* @param val
*/
OrderAllocateDTO setOwnerId(String ownerId) {
this.ownerId = ownerId
return this
}
/**
* 设置「所属数据对象」值
* @param val
*/
OrderAllocateDTO setOwnerType(String ownerType) {
this.ownerType = ownerType
return this
}
/**
* 设置「用户名称」值
* @param val
*/
OrderAllocateDTO setUserName(String userName) {
this.userName = userName
return this
}
/**
* 设置「分配比率」值
* @param val
*/
OrderAllocateDTO setRatio(BigDecimal ratio) {
this.ratio = ratio
return this
}
/**
* 设置「金额」值
* @param val
*/
OrderAllocateDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
OrderAllocateDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
OrderAllocateDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
OrderAllocateDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
OrderAllocateDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
OrderAllocateDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
OrderAllocateDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「用户标识」值
* 字典[所有者]
* @param val
*/
OrderAllocateDTO setUserId(String userId) {
this.userId = userId
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.orderallocate.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class OrderAllocateFilterDTO extends GroovyFilter<OrderAllocateFilterDTO> {
}

View File

@@ -0,0 +1,295 @@
package cn.ibizlab.crm.crm.payee
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.payee.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[PAYEE]运行时对象
* 此代码用户功能扩展代码
*
*/
class Payee extends GroovyDataEntityRuntime<Payee,PayeeDTO,PayeeFilterDTO> {
public static final String ACTION_ACCOUNTFROMPLAN = "AccountFromPlan"
public static final String ACTION_ALLOCATEFROMPROJECT = "AllocateFromProject"
public static final String ACTION_ASYNC_ADDPAYEETOWORKPROGRESS = "Async_addPayeeToWorkProgress"
public static final String ACTION_PROJECTINFO = "ProjectInfo"
public static final String ACTION_ADDPAYEETOWORKPROGRESS = "addPayeeToWorkProgress"
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String ACTION_MOVE_ORDER = "move_order"
public static final String ACTION_PLANINFOBYPROJECT = "PlanInfoByProject"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_EXECUTOR = "executor"
public static final String DATASET_SUM = "sum"
public static final String DATASET_TREE = "tree"
private static Payee _instance
void setInstance(Payee instance) {
_instance = instance
}
static Payee getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
PayeeDTO create(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, PayeeDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
PayeeDTO update(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, PayeeDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
PayeeDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, PayeeDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
PayeeDTO getDraft(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, PayeeDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(PayeeDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
PayeeDTO save(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, PayeeDTO.class)
}
/**
* 行为:获取对应记录金额 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ACCOUNTFROMPLAN)
def accountFromPlan(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_ACCOUNTFROMPLAN, dto, PayeeDTO.class)
}
/**
* 行为:获取订单的人员分配 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ALLOCATEFROMPROJECT)
def allocateFromProject(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_ALLOCATEFROMPROJECT, dto, PayeeDTO.class)
}
/**
* 行为:异步新建线索时添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ASYNC_ADDPAYEETOWORKPROGRESS)
def asyncAddpayeetoworkprogress(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_ASYNC_ADDPAYEETOWORKPROGRESS, dto, Object.class)
}
/**
* 行为:获取订单相关信息 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_PROJECTINFO)
def projectInfo(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_PROJECTINFO, dto, PayeeDTO.class)
}
/**
* 行为:新建收款记录添加到工作进展 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADDPAYEETOWORKPROGRESS)
def addPayeeToWorkProgress(PayeeDTO dto) throws Throwable {
this.execute(ACTION_ADDPAYEETOWORKPROGRESS, dto, PayeeDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(PayeeDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, PayeeDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(PayeeDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, PayeeDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(PayeeDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, PayeeDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(PayeeDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, PayeeDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(PayeeDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, PayeeDTO.class)
}
/**
* 行为:移动排序 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MOVE_ORDER)
def moveOrder(PayeeDTO dto) throws Throwable {
return this.executeForList(ACTION_MOVE_ORDER, dto, PayeeDTO.class)
}
/**
* 行为:通过project_id获取plan 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_PLANINFOBYPROJECT)
def planInfoByProject(PayeeDTO dto) throws Throwable {
return this.execute(ACTION_PLANINFOBYPROJECT, dto, PayeeDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<PayeeDTO> fetchDefault(PayeeFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, PayeeDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<PayeeDTO> fetchAll(PayeeFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, PayeeDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<PayeeDTO> fetchCreateman(PayeeFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, PayeeDTO.class)
}
/**
* 数据集:执行人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_EXECUTOR)
Page<PayeeDTO> fetchExecutor(PayeeFilterDTO context) throws Throwable {
return this.fetch(DATASET_EXECUTOR, context, PayeeDTO.class)
}
/**
* 数据集:金额汇总 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_SUM)
Page<PayeeDTO> fetchSum(PayeeFilterDTO context) throws Throwable {
return this.fetch(DATASET_SUM, context, PayeeDTO.class)
}
/**
* 数据集:树表格 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TREE)
Page<PayeeDTO> fetchTree(PayeeFilterDTO context) throws Throwable {
return this.fetch(DATASET_TREE, context, PayeeDTO.class)
}
}

View File

@@ -0,0 +1,495 @@
package cn.ibizlab.crm.crm.payee.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.payeeallocate.dto.PayeeAllocateDTO
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeeDTO extends GroovyDTO<PayeeDTO> {
/**
* 「序号」
*/
@JsonProperty("sequence")
BigDecimal sequence
/**
* 「收款方式」
*/
@JsonProperty("method")
String method
/**
* 「收款日期」
*/
@JsonProperty("payee_date")
Timestamp payeeDate
/**
* 「原计划金额」
*/
@JsonProperty("plan_amount")
BigDecimal planAmount
/**
* 「原计划时间」
*/
@JsonProperty("planned_time")
Timestamp plannedTime
/**
* 「原计划说明」
*/
@JsonProperty("plan_description")
String planDescription
/**
* 「回款分配」
*/
@JsonProperty("payee_allocates")
List<PayeeAllocateDTO> payeeAllocates
/**
* 「所属年度」
*/
@JsonProperty("year")
String year
/**
* 「订单编号」
*/
@JsonProperty("o_number")
String oNumber
/**
* 「分配模式」
* 字典[分配模式]
*/
@JsonProperty("allocate_model")
String allocateModel
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「父标识」
*/
@JsonProperty("pproject_id")
String pprojectId
/**
* 「订单名称」
*/
@JsonProperty("project_name")
String projectName
/**
* 「客户名称」
*/
@JsonProperty("account_name")
String accountName
/**
* 「业绩结算金额」
*/
@JsonProperty("settlement_amount")
BigDecimal settlementAmount
/**
* 「业务条线」
* 字典[行业]
*/
@JsonProperty("business_line")
String businessLine
/**
* 「订单日期」
*/
@JsonProperty("order_date")
Timestamp orderDate
/**
* 「计划名称」
*/
@JsonProperty("plan_name")
String planName
/**
* 「金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「款项说明」
*/
@JsonProperty("description")
String description
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「编号」
*/
@JsonProperty("payee_number")
String payeeNumber
/**
* 「收款计划标识」
*/
@JsonProperty("payee_plan_id")
String payeePlanId
/**
* 「订单标识」
*/
@JsonProperty("project_id")
String projectId
/**
* 「状态」
* 字典[收款状态]
*/
@JsonProperty("status")
String status
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「序号」值
* @param val
*/
PayeeDTO setSequence(BigDecimal sequence) {
this.sequence = sequence
return this
}
/**
* 设置「收款方式」值
* @param val
*/
PayeeDTO setMethod(String method) {
this.method = method
return this
}
/**
* 设置「收款日期」值
* @param val
*/
PayeeDTO setPayeeDate(Timestamp payeeDate) {
this.payeeDate = payeeDate
return this
}
/**
* 设置「原计划金额」值
* @param val
*/
PayeeDTO setPlanAmount(BigDecimal planAmount) {
this.planAmount = planAmount
return this
}
/**
* 设置「原计划时间」值
* @param val
*/
PayeeDTO setPlannedTime(Timestamp plannedTime) {
this.plannedTime = plannedTime
return this
}
/**
* 设置「原计划说明」值
* @param val
*/
PayeeDTO setPlanDescription(String planDescription) {
this.planDescription = planDescription
return this
}
/**
* 设置「回款分配」值
* @param val
*/
PayeeDTO setPayeeAllocates(List<PayeeAllocateDTO> payeeAllocates) {
this.payeeAllocates = payeeAllocates
return this
}
/**
* 设置「所属年度」值
* @param val
*/
PayeeDTO setYear(String year) {
this.year = year
return this
}
/**
* 设置「订单编号」值
* @param val
*/
PayeeDTO setONumber(String oNumber) {
this.oNumber = oNumber
return this
}
/**
* 设置「分配模式」值
* 字典[分配模式]
* @param val
*/
PayeeDTO setAllocateModel(String allocateModel) {
this.allocateModel = allocateModel
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
PayeeDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「父标识」值
* @param val
*/
PayeeDTO setPprojectId(String pprojectId) {
this.pprojectId = pprojectId
return this
}
/**
* 设置「订单名称」值
* @param val
*/
PayeeDTO setProjectName(String projectName) {
this.projectName = projectName
return this
}
/**
* 设置「客户名称」值
* @param val
*/
PayeeDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「业绩结算金额」值
* @param val
*/
PayeeDTO setSettlementAmount(BigDecimal settlementAmount) {
this.settlementAmount = settlementAmount
return this
}
/**
* 设置「业务条线」值
* 字典[行业]
* @param val
*/
PayeeDTO setBusinessLine(String businessLine) {
this.businessLine = businessLine
return this
}
/**
* 设置「订单日期」值
* @param val
*/
PayeeDTO setOrderDate(Timestamp orderDate) {
this.orderDate = orderDate
return this
}
/**
* 设置「计划名称」值
* @param val
*/
PayeeDTO setPlanName(String planName) {
this.planName = planName
return this
}
/**
* 设置「金额」值
* @param val
*/
PayeeDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「附件」值
* @param val
*/
PayeeDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
PayeeDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
PayeeDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「款项说明」值
* @param val
*/
PayeeDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「标识」值
* @param val
*/
PayeeDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
PayeeDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「编号」值
* @param val
*/
PayeeDTO setPayeeNumber(String payeeNumber) {
this.payeeNumber = payeeNumber
return this
}
/**
* 设置「收款计划标识」值
* @param val
*/
PayeeDTO setPayeePlanId(String payeePlanId) {
this.payeePlanId = payeePlanId
return this
}
/**
* 设置「订单标识」值
* @param val
*/
PayeeDTO setProjectId(String projectId) {
this.projectId = projectId
return this
}
/**
* 设置「状态」值
* 字典[收款状态]
* @param val
*/
PayeeDTO setStatus(String status) {
this.status = status
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
PayeeDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
PayeeDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.payee.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeeFilterDTO extends GroovyFilter<PayeeFilterDTO> {
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.payee.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE]处理逻辑[新建收款记录添加到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AddPayeeToWorkProgress extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AddPayeeToWorkProgress.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备工作进展参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[创建工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备工作进展参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[创建工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,75 @@
package cn.ibizlab.crm.crm.payee.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE]处理逻辑[异步添加收款记录到工作进展]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class AsyncPayeeToWorkProgres extends DELogicRuntime {
private static final Log log = LogFactory.getLog(AsyncPayeeToWorkProgres.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[异步添加收款记录到工作进展]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[异步添加收款记录到工作进展],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,117 @@
package cn.ibizlab.crm.crm.payee.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE]处理逻辑[获取对应记录信息]运行时对象
* 此代码用户功能扩展代码
*
* 获取记录信息回填到表单中
*/
class PlanAccountGet extends DELogicRuntime {
private static final Log log = LogFactory.getLog(PlanAccountGet.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,117 @@
package cn.ibizlab.crm.crm.payee.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE]处理逻辑[通过project_id获取记录信息]运行时对象
* 此代码用户功能扩展代码
*
* 通过project_id获取记录信息
*/
class PlanGetProjectId extends DELogicRuntime {
private static final Log log = LogFactory.getLog(PlanGetProjectId.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,117 @@
package cn.ibizlab.crm.crm.payee.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE]处理逻辑[获取对应订单信息]运行时对象
* 此代码用户功能扩展代码
*
* 订单信息回填到表单中
*/
class ProjectGet extends DELogicRuntime {
private static final Log log = LogFactory.getLog(ProjectGet.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM1":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,201 @@
package cn.ibizlab.crm.crm.payee.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE]处理逻辑[将订单分配传入收款记录]运行时对象
* 此代码用户功能扩展代码
*
* null
*/
class ProjectToPayee extends DELogicRuntime {
private static final Log log = LogFactory.getLog(ProjectToPayee.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM3":
//执行逻辑节点[查看结果数据]
executeDEBUGPARAM3(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM2":
//执行逻辑节点[调试逻辑参数]
executeDEBUGPARAM2(iDELogicSession, iPSDELogicNode)
break
case "DEBUGPARAM4":
//执行逻辑节点[每次sub数据]
executeDEBUGPARAM4(iDELogicSession, iPSDELogicNode)
break
case "DEDATASET1":
//执行逻辑节点[实体数据集]
executeDEDATASET1(iDELogicSession, iPSDELogicNode)
break
case "LOOPSUBCALL1":
//执行逻辑节点[循环子调用]
executeLOOPSUBCALL1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "RENEWPARAM1":
//执行逻辑节点[重新建立参数]
executeRENEWPARAM1(iDELogicSession, iPSDELogicNode)
break
case "APPENDPARAM1":
//执行逻辑节点[附加到数组参数]
executeAPPENDPARAM1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM3":
//执行逻辑节点[准备参数]
executePREPAREPARAM3(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[查看结果数据],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[调试逻辑参数],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[每次sub数据],逻辑类型[DEBUGPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEBUGPARAM4(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体数据集],逻辑类型[DEDATASET]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEDATASET1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[循环子调用],逻辑类型[LOOPSUBCALL]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeLOOPSUBCALL1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[重新建立参数],逻辑类型[RENEWPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeRENEWPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[附加到数组参数],逻辑类型[APPENDPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeAPPENDPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM3(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,119 @@
package cn.ibizlab.crm.crm.payeeallocate
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.payeeallocate.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[PAYEE_ALLOCATE]运行时对象
* 此代码用户功能扩展代码
*
*/
class PayeeAllocate extends GroovyDataEntityRuntime<PayeeAllocate,PayeeAllocateDTO,PayeeAllocateFilterDTO> {
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
private static PayeeAllocate _instance
void setInstance(PayeeAllocate instance) {
_instance = instance
}
static PayeeAllocate getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
PayeeAllocateDTO create(PayeeAllocateDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, PayeeAllocateDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
PayeeAllocateDTO update(PayeeAllocateDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, PayeeAllocateDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
PayeeAllocateDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, PayeeAllocateDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
PayeeAllocateDTO getDraft(PayeeAllocateDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, PayeeAllocateDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(PayeeAllocateDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
PayeeAllocateDTO save(PayeeAllocateDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, PayeeAllocateDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<PayeeAllocateDTO> fetchDefault(PayeeAllocateFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, PayeeAllocateDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<PayeeAllocateDTO> fetchAll(PayeeAllocateFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, PayeeAllocateDTO.class)
}
}

View File

@@ -0,0 +1,185 @@
package cn.ibizlab.crm.crm.payeeallocate.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeeAllocateDTO extends GroovyDTO<PayeeAllocateDTO> {
/**
* 「分配比率」
*/
@JsonProperty("ratio")
BigDecimal ratio
/**
* 「用户名称」
*/
@JsonProperty("user_name")
String userName
/**
* 「金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「回款标识」
*/
@JsonProperty("payee_id")
String payeeId
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 「用户标识」
*/
@JsonProperty("user_id")
String userId
/**
* 设置「分配比率」值
* @param val
*/
PayeeAllocateDTO setRatio(BigDecimal ratio) {
this.ratio = ratio
return this
}
/**
* 设置「用户名称」值
* @param val
*/
PayeeAllocateDTO setUserName(String userName) {
this.userName = userName
return this
}
/**
* 设置「金额」值
* @param val
*/
PayeeAllocateDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
PayeeAllocateDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
PayeeAllocateDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
PayeeAllocateDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
PayeeAllocateDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「回款标识」值
* @param val
*/
PayeeAllocateDTO setPayeeId(String payeeId) {
this.payeeId = payeeId
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
PayeeAllocateDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
PayeeAllocateDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
/**
* 设置「用户标识」值
* @param val
*/
PayeeAllocateDTO setUserId(String userId) {
this.userId = userId
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.payeeallocate.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeeAllocateFilterDTO extends GroovyFilter<PayeeAllocateFilterDTO> {
}

View File

@@ -0,0 +1,262 @@
package cn.ibizlab.crm.crm.payeeplan
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.payeeplan.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[PAYEE_PLAN]运行时对象
* 此代码用户功能扩展代码
*
*/
class PayeePlan extends GroovyDataEntityRuntime<PayeePlan,PayeePlanDTO,PayeePlanFilterDTO> {
public static final String ACTION_ADD_PROJECT = "add_project"
public static final String ACTION_ADD_TAGS = "add_tags"
public static final String ACTION_BATCH_UPDATE = "batch_update"
public static final String ACTION_CREATE_TASK = "create_task"
public static final String ACTION_DELETE_TAGS = "delete_tags"
public static final String ACTION_MAIN_VIEW_DR_COUNT = "main_view_dr_count"
public static final String ACTION_MOVE_ORDER = "move_order"
public static final String ACTION_PLAN_TO_PAYEE = "plan_to_payee"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_ALL = "all"
public static final String DATASET_CREATEMAN = "createman"
public static final String DATASET_EXECUTOR = "executor"
public static final String DATASET_SUM = "sum"
public static final String DATASET_TOWARD = "toward"
public static final String DATASET_TREE = "tree"
private static PayeePlan _instance
void setInstance(PayeePlan instance) {
_instance = instance
}
static PayeePlan getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
PayeePlanDTO create(PayeePlanDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, PayeePlanDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
PayeePlanDTO update(PayeePlanDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, PayeePlanDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
PayeePlanDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, PayeePlanDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
PayeePlanDTO getDraft(PayeePlanDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, PayeePlanDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(PayeePlanDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
PayeePlanDTO save(PayeePlanDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, PayeePlanDTO.class)
}
/**
* 行为:获取订单数据 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_PROJECT)
def addProject(PayeePlanDTO dto) throws Throwable {
return this.execute(ACTION_ADD_PROJECT, dto, PayeePlanDTO.class)
}
/**
* 行为:批添加标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ADD_TAGS)
def addTags(PayeePlanDTO dto) throws Throwable {
this.execute(ACTION_ADD_TAGS, dto, PayeePlanDTO.class)
}
/**
* 行为:批更新 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_BATCH_UPDATE)
def batchUpdate(PayeePlanDTO dto) throws Throwable {
this.execute(ACTION_BATCH_UPDATE, dto, PayeePlanDTO.class)
}
/**
* 行为:批创建任务 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE_TASK)
def createTask(PayeePlanDTO dto) throws Throwable {
this.execute(ACTION_CREATE_TASK, dto, PayeePlanDTO.class)
}
/**
* 行为:批移除标签 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_DELETE_TAGS)
def deleteTags(PayeePlanDTO dto) throws Throwable {
this.execute(ACTION_DELETE_TAGS, dto, PayeePlanDTO.class)
}
/**
* 行为:main_view_dr计数器 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MAIN_VIEW_DR_COUNT)
def mainViewDrCount(PayeePlanDTO dto) throws Throwable {
this.execute(ACTION_MAIN_VIEW_DR_COUNT, dto, PayeePlanDTO.class)
}
/**
* 行为:移动排序 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_MOVE_ORDER)
def moveOrder(PayeePlanDTO dto) throws Throwable {
return this.executeForList(ACTION_MOVE_ORDER, dto, PayeePlanDTO.class)
}
/**
* 行为:将数据传给记录 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_PLAN_TO_PAYEE)
def planToPayee(PayeePlanDTO dto) throws Throwable {
this.execute(ACTION_PLAN_TO_PAYEE, dto, PayeePlanDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<PayeePlanDTO> fetchDefault(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, PayeePlanDTO.class)
}
/**
* 数据集:全部 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<PayeePlanDTO> fetchAll(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, PayeePlanDTO.class)
}
/**
* 数据集:创建者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_CREATEMAN)
Page<PayeePlanDTO> fetchCreateman(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_CREATEMAN, context, PayeePlanDTO.class)
}
/**
* 数据集:执行人 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_EXECUTOR)
Page<PayeePlanDTO> fetchExecutor(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_EXECUTOR, context, PayeePlanDTO.class)
}
/**
* 数据集:金额汇总 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_SUM)
Page<PayeePlanDTO> fetchSum(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_SUM, context, PayeePlanDTO.class)
}
/**
* 数据集:进行中 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TOWARD)
Page<PayeePlanDTO> fetchToward(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_TOWARD, context, PayeePlanDTO.class)
}
/**
* 数据集:树表格 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_TREE)
Page<PayeePlanDTO> fetchTree(PayeePlanFilterDTO context) throws Throwable {
return this.fetch(DATASET_TREE, context, PayeePlanDTO.class)
}
}

View File

@@ -0,0 +1,389 @@
package cn.ibizlab.crm.crm.payeeplan.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
import cn.ibizlab.crm.crm.attachment.dto.AttachmentDTO
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeePlanDTO extends GroovyDTO<PayeePlanDTO> {
/**
* 「序号」
*/
@JsonProperty("sequence")
BigDecimal sequence
/**
* 「计划收款时间」
*/
@JsonProperty("planned_time")
Timestamp plannedTime
/**
* 「未纳入结算计划款」
* 字典[是否]
*/
@JsonProperty("is_not_in_plan")
Integer isNotInPlan
/**
* 「订单编号」
*/
@JsonProperty("o_number")
String oNumber
/**
* 「所有者」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「父订单标识」
*/
@JsonProperty("pproject_id")
String pprojectId
/**
* 「计划状态」
* 字典[计划状态]
*/
@JsonProperty("plan_status")
String planStatus
/**
* 「计划名称」
*/
@JsonProperty("plan_name")
String planName
/**
* 「订单金额」
*/
@JsonProperty("project_amount")
BigDecimal projectAmount
/**
* 「业绩结算金额」
*/
@JsonProperty("settlement_amount")
BigDecimal settlementAmount
/**
* 「订单客户」
*/
@JsonProperty("account_name")
String accountName
/**
* 「订单日期」
*/
@JsonProperty("order_date")
Timestamp orderDate
/**
* 「业务条线」
* 字典[行业]
*/
@JsonProperty("business_line")
String businessLine
/**
* 「金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「附件」
*/
@JsonProperty("attachments")
List<AttachmentDTO> attachments
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「款项说明」
*/
@JsonProperty("description")
String description
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「订单名称」
*/
@JsonProperty("project_id")
String projectId
/**
* 「订单名称」
*/
@JsonProperty("project_name")
String projectName
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「序号」值
* @param val
*/
PayeePlanDTO setSequence(BigDecimal sequence) {
this.sequence = sequence
return this
}
/**
* 设置「计划收款时间」值
* @param val
*/
PayeePlanDTO setPlannedTime(Timestamp plannedTime) {
this.plannedTime = plannedTime
return this
}
/**
* 设置「未纳入结算计划款」值
* 字典[是否]
* @param val
*/
PayeePlanDTO setIsNotInPlan(Integer isNotInPlan) {
this.isNotInPlan = isNotInPlan
return this
}
/**
* 设置「订单编号」值
* @param val
*/
PayeePlanDTO setONumber(String oNumber) {
this.oNumber = oNumber
return this
}
/**
* 设置「所有者」值
* 字典[所有者]
* @param val
*/
PayeePlanDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「父订单标识」值
* @param val
*/
PayeePlanDTO setPprojectId(String pprojectId) {
this.pprojectId = pprojectId
return this
}
/**
* 设置「计划状态」值
* 字典[计划状态]
* @param val
*/
PayeePlanDTO setPlanStatus(String planStatus) {
this.planStatus = planStatus
return this
}
/**
* 设置「计划名称」值
* @param val
*/
PayeePlanDTO setPlanName(String planName) {
this.planName = planName
return this
}
/**
* 设置「订单金额」值
* @param val
*/
PayeePlanDTO setProjectAmount(BigDecimal projectAmount) {
this.projectAmount = projectAmount
return this
}
/**
* 设置「业绩结算金额」值
* @param val
*/
PayeePlanDTO setSettlementAmount(BigDecimal settlementAmount) {
this.settlementAmount = settlementAmount
return this
}
/**
* 设置「订单客户」值
* @param val
*/
PayeePlanDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「订单日期」值
* @param val
*/
PayeePlanDTO setOrderDate(Timestamp orderDate) {
this.orderDate = orderDate
return this
}
/**
* 设置「业务条线」值
* 字典[行业]
* @param val
*/
PayeePlanDTO setBusinessLine(String businessLine) {
this.businessLine = businessLine
return this
}
/**
* 设置「金额」值
* @param val
*/
PayeePlanDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「附件」值
* @param val
*/
PayeePlanDTO setAttachments(List<AttachmentDTO> attachments) {
this.attachments = attachments
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
PayeePlanDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
PayeePlanDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「款项说明」值
* @param val
*/
PayeePlanDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「标识」值
* @param val
*/
PayeePlanDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
PayeePlanDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「订单名称」值
* @param val
*/
PayeePlanDTO setProjectId(String projectId) {
this.projectId = projectId
return this
}
/**
* 设置「订单名称」值
* @param val
*/
PayeePlanDTO setProjectName(String projectName) {
this.projectName = projectName
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
PayeePlanDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
PayeePlanDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

View File

@@ -0,0 +1,16 @@
package cn.ibizlab.crm.crm.payeeplan.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeePlanFilterDTO extends GroovyFilter<PayeePlanFilterDTO> {
}

View File

@@ -0,0 +1,103 @@
package cn.ibizlab.crm.crm.payeeplan.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE_PLAN]处理逻辑[将订单数据传给计划]运行时对象
* 此代码用户功能扩展代码
*
* 获取订单的数据并赋给计划展示
*/
class DateFromProject extends DELogicRuntime {
private static final Log log = LogFactory.getLog(DateFromProject.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[准备参数]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM2":
//执行逻辑节点[准备参数]
executePREPAREPARAM2(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[准备参数],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM2(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,89 @@
package cn.ibizlab.crm.crm.payeeplan.logic
import net.ibizsys.central.cloud.core.dataentity.logic.DELogicRuntime
import net.ibizsys.central.dataentity.logic.IDELogicSession
import net.ibizsys.model.dataentity.logic.IPSDELogicNode
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
/**
* 实体[PAYEE_PLAN]处理逻辑[将数据传给记录]运行时对象
* 此代码用户功能扩展代码
*
* 将计划数据(金额、描述等)传给记录
*/
class PlanToPayee extends DELogicRuntime {
private static final Log log = LogFactory.getLog(PlanToPayee.class)
@Override
protected void onInit() throws Exception {
super.onInit()
}
@Override
protected void onExecutePSDELogicNode(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
switch (iPSDELogicNode.getCodeName()) {
case "Begin":
//执行逻辑节点[开始]
executeBegin(iDELogicSession, iPSDELogicNode)
break
case "END1":
//执行逻辑节点[结束]
executeEND1(iDELogicSession, iPSDELogicNode)
break
case "DEACTION1":
//执行逻辑节点[实体行为]
executeDEACTION1(iDELogicSession, iPSDELogicNode)
break
case "PREPAREPARAM1":
//执行逻辑节点[将所需数据]
executePREPAREPARAM1(iDELogicSession, iPSDELogicNode)
break
default:
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode)
}
}
/**
* 执行逻辑节点[开始],逻辑类型[BEGIN]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeBegin(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[结束],逻辑类型[END]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeEND1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[实体行为],逻辑类型[DEACTION]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executeDEACTION1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
/**
* 执行逻辑节点[将所需数据],逻辑类型[PREPAREPARAM]
* @param iDELogicSession
* @param iPSDELogicNode
* @throws Throwable
*/
private void executePREPAREPARAM1(IDELogicSession iDELogicSession, IPSDELogicNode iPSDELogicNode) throws Throwable {
super.onExecutePSDELogicNode(iDELogicSession, iPSDELogicNode, true)
}
}

View File

@@ -0,0 +1,196 @@
package cn.ibizlab.crm.crm.payeestatistic
import java.util.List
import org.springframework.data.domain.Page
import cn.ibizlab.crm.crm.payeestatistic.dto.*
import net.ibizsys.central.util.annotation.DEDataSet
import net.ibizsys.central.util.annotation.DEAction
import cn.ibizlab.central.plugin.groovy.dataentity.*
/**
* 实体[PAYEE_STATISTIC]运行时对象
* 此代码用户功能扩展代码
*
*/
class PayeeStatistic extends GroovyDataEntityRuntime<PayeeStatistic,PayeeStatisticDTO,PayeeStatisticFilterDTO> {
public static final String ACTION_ASYNC_CALCULATION = "Async_Calculation"
public static final String ACTION_CALCULATION = "Calculation"
public static final String ACTION_ALL_STATISTIC = "all_statistic"
public static final String DATASET_DEFAULT = "DEFAULT"
public static final String DATASET_SORTBYNAME = "SortbyName"
public static final String DATASET_ALL = "all"
public static final String DATASET_FINDPLAN_PAYEE = "findplan_payee"
public static final String DATASET_OWNER = "owner"
public static final String DATASET_STATISTIC = "statistic"
private static PayeeStatistic _instance
void setInstance(PayeeStatistic instance) {
_instance = instance
}
static PayeeStatistic getInstance() {
return _instance
}
/**
* 行为:Create 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CREATE)
PayeeStatisticDTO create(PayeeStatisticDTO dto) throws Throwable {
return this.execute(ACTION_CREATE, dto, PayeeStatisticDTO.class)
}
/**
* 行为:Update 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_UPDATE)
PayeeStatisticDTO update(PayeeStatisticDTO dto) throws Throwable {
return this.execute(ACTION_UPDATE, dto, PayeeStatisticDTO.class)
}
/**
* 行为:Remove 实际功能
* @param keys
* @throws Throwable
*/
@DEAction(ACTION_REMOVE)
void remove(String key) throws Throwable {
this.execute(ACTION_REMOVE, key, Void.class)
}
/**
* 行为:Get 实际功能
* @param key
* @throws Throwable
*/
@DEAction(ACTION_GET)
PayeeStatisticDTO get(String key) throws Throwable {
return this.execute(ACTION_GET, key, PayeeStatisticDTO.class)
}
/**
* 行为:GetDraft 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_GETDRAFT)
PayeeStatisticDTO getDraft(PayeeStatisticDTO dto) throws Throwable {
return this.execute(ACTION_GETDRAFT, dto, PayeeStatisticDTO.class)
}
/**
* 行为:CheckKey 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CHECKKEY)
int checkKey(PayeeStatisticDTO dto) throws Throwable {
return super.checkKeyState(dto)
}
/**
* 行为:Save 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_SAVE)
PayeeStatisticDTO save(PayeeStatisticDTO dto) throws Throwable {
return this.execute(ACTION_SAVE, dto, PayeeStatisticDTO.class)
}
/**
* 行为:异步计算统计数据 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ASYNC_CALCULATION)
def asyncCalculation(PayeeStatisticDTO dto) throws Throwable {
return this.execute(ACTION_ASYNC_CALCULATION, dto, Object.class)
}
/**
* 行为:计算统计数据 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_CALCULATION)
def calculation(PayeeStatisticDTO dto) throws Throwable {
this.execute(ACTION_CALCULATION, dto, PayeeStatisticDTO.class)
}
/**
* 行为:将计划数据更新到统计表 实际功能
* @param dto
* @throws Throwable
*/
@DEAction(ACTION_ALL_STATISTIC)
def allStatistic(PayeeStatisticDTO dto) throws Throwable {
this.execute(ACTION_ALL_STATISTIC, dto, PayeeStatisticDTO.class)
}
/**
* 数据集:数据集 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_DEFAULT)
Page<PayeeStatisticDTO> fetchDefault(PayeeStatisticFilterDTO context) throws Throwable {
return this.fetch(DATASET_DEFAULT, context, PayeeStatisticDTO.class)
}
/**
* 数据集:通过情况名来排序 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_SORTBYNAME)
Page<PayeeStatisticDTO> fetchSortbyName(PayeeStatisticFilterDTO context) throws Throwable {
return this.fetch(DATASET_SORTBYNAME, context, PayeeStatisticDTO.class)
}
/**
* 数据集:全部数据 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_ALL)
Page<PayeeStatisticDTO> fetchAll(PayeeStatisticFilterDTO context) throws Throwable {
return this.fetch(DATASET_ALL, context, PayeeStatisticDTO.class)
}
/**
* 数据集:附加记录/计划信息 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_FINDPLAN_PAYEE)
Page<PayeeStatisticDTO> fetchFindplanPayee(PayeeStatisticFilterDTO context) throws Throwable {
return this.fetch(DATASET_FINDPLAN_PAYEE, context, PayeeStatisticDTO.class)
}
/**
* 数据集:所有者 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_OWNER)
Page<PayeeStatisticDTO> fetchOwner(PayeeStatisticFilterDTO context) throws Throwable {
return this.fetch(DATASET_OWNER, context, PayeeStatisticDTO.class)
}
/**
* 数据集:统计 实际功能
* @param dto
* @throws Throwable
*/
@DEDataSet(DATASET_STATISTIC)
Page<PayeeStatisticDTO> fetchStatistic(PayeeStatisticFilterDTO context) throws Throwable {
return this.fetch(DATASET_STATISTIC, context, PayeeStatisticDTO.class)
}
}

View File

@@ -0,0 +1,296 @@
package cn.ibizlab.crm.crm.payeestatistic.dto
import java.util.*
import java.math.*
import java.sql.Timestamp
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonInclude
import net.ibizsys.central.util.*
import cn.ibizlab.central.plugin.groovy.annotation.DEDataModel
import cn.ibizlab.central.plugin.groovy.dataentity.dto.*
@DEDataModel
@JsonInclude(JsonInclude.Include.NON_NULL)
class PayeeStatisticDTO extends GroovyDTO<PayeeStatisticDTO> {
/**
* 「类型」
* 字典[收款情况类型]
*/
@JsonProperty("type")
String type
/**
* 「销售人员」
* 字典[所有者]
*/
@JsonProperty("owner")
String owner
/**
* 「行业」
*/
@JsonProperty("sector")
String sector
/**
* 「统计时间」
*/
@JsonProperty("statistic_date")
Timestamp statisticDate
/**
* 「计划/记录时间」
*/
@JsonProperty("type_date")
Timestamp typeDate
/**
* 「订单编号」
*/
@JsonProperty("o_number")
String oNumber
/**
* 「客户名称」
*/
@JsonProperty("account_name")
String accountName
/**
* 「订单标识」
*/
@JsonProperty("project_id")
String projectId
/**
* 「订单名称」
*/
@JsonProperty("project_name")
String projectName
/**
* 「款项说明」
*/
@JsonProperty("description")
String description
/**
* 「业务条线」
* 字典[行业]
*/
@JsonProperty("business_line")
String businessLine
/**
* 「收款金额」
*/
@JsonProperty("amount")
BigDecimal amount
/**
* 「建立人」
* 字典[云系统操作者]
*/
@JsonProperty("create_man")
String createMan
/**
* 「建立时间」
*/
@JsonProperty("create_time")
Timestamp createTime
/**
* 「标识」
*/
@JsonProperty("id")
String id
/**
* 「名称」
*/
@JsonProperty("name")
String name
/**
* 「更新人」
* 字典[云系统操作者]
*/
@JsonProperty("update_man")
String updateMan
/**
* 「更新时间」
*/
@JsonProperty("update_time")
Timestamp updateTime
/**
* 设置「类型」值
* 字典[收款情况类型]
* @param val
*/
PayeeStatisticDTO setType(String type) {
this.type = type
return this
}
/**
* 设置「销售人员」值
* 字典[所有者]
* @param val
*/
PayeeStatisticDTO setOwner(String owner) {
this.owner = owner
return this
}
/**
* 设置「行业」值
* @param val
*/
PayeeStatisticDTO setSector(String sector) {
this.sector = sector
return this
}
/**
* 设置「统计时间」值
* @param val
*/
PayeeStatisticDTO setStatisticDate(Timestamp statisticDate) {
this.statisticDate = statisticDate
return this
}
/**
* 设置「计划/记录时间」值
* @param val
*/
PayeeStatisticDTO setTypeDate(Timestamp typeDate) {
this.typeDate = typeDate
return this
}
/**
* 设置「订单编号」值
* @param val
*/
PayeeStatisticDTO setONumber(String oNumber) {
this.oNumber = oNumber
return this
}
/**
* 设置「客户名称」值
* @param val
*/
PayeeStatisticDTO setAccountName(String accountName) {
this.accountName = accountName
return this
}
/**
* 设置「订单标识」值
* @param val
*/
PayeeStatisticDTO setProjectId(String projectId) {
this.projectId = projectId
return this
}
/**
* 设置「订单名称」值
* @param val
*/
PayeeStatisticDTO setProjectName(String projectName) {
this.projectName = projectName
return this
}
/**
* 设置「款项说明」值
* @param val
*/
PayeeStatisticDTO setDescription(String description) {
this.description = description
return this
}
/**
* 设置「业务条线」值
* 字典[行业]
* @param val
*/
PayeeStatisticDTO setBusinessLine(String businessLine) {
this.businessLine = businessLine
return this
}
/**
* 设置「收款金额」值
* @param val
*/
PayeeStatisticDTO setAmount(BigDecimal amount) {
this.amount = amount
return this
}
/**
* 设置「建立人」值
* 字典[云系统操作者]
* @param val
*/
PayeeStatisticDTO setCreateMan(String createMan) {
this.createMan = createMan
return this
}
/**
* 设置「建立时间」值
* @param val
*/
PayeeStatisticDTO setCreateTime(Timestamp createTime) {
this.createTime = createTime
return this
}
/**
* 设置「标识」值
* @param val
*/
PayeeStatisticDTO setId(String id) {
this.id = id
return this
}
/**
* 设置「名称」值
* @param val
*/
PayeeStatisticDTO setName(String name) {
this.name = name
return this
}
/**
* 设置「更新人」值
* 字典[云系统操作者]
* @param val
*/
PayeeStatisticDTO setUpdateMan(String updateMan) {
this.updateMan = updateMan
return this
}
/**
* 设置「更新时间」值
* @param val
*/
PayeeStatisticDTO setUpdateTime(Timestamp updateTime) {
this.updateTime = updateTime
return this
}
}

Some files were not shown because too many files have changed in this diff Show More