Commit a7b2ebd2 authored by 赵啸非's avatar 赵啸非

修改app版本

parent 99908db6
......@@ -927,39 +927,45 @@ CREATE TABLE mortals_sys_matter_ext
-- ----------------------------
-- 自助终端应用表
-- ----------------------------
-- ----------------------------
-- 自助终端应用表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_sys_app`;
CREATE TABLE mortals_sys_app(
`id` bigint(20) AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`siteId` bigint(20) COMMENT '站点Id',
`siteName` varchar(256) COMMENT '站点名称',
`appCode` varchar(256) COMMENT '应用编码',
`appName` varchar(256) COMMENT '应用名称',
`appIconPath` varchar(256) COMMENT '应用图标',
`appThemeName` varchar(256) COMMENT '应用主题名称',
`type` tinyint(2) COMMENT '类型(1.终端应用,2.移动端应用)',
`downDevCount` int(4) COMMENT '下发设备次数',
`shelves` tinyint(2) COMMENT '是否上架(0.下架,1.上架)',
`appType` tinyint(2) COMMENT '类型(1.应用程序,2.url)',
`fileName` varchar(255) COMMENT '文件名称',
`filePath` varchar(256) COMMENT '文件相对路径地址',
`distributeFilePath` varchar(256) COMMENT '文件部署路径地址',
`version` varchar(64) COMMENT '当前版本',
`summary` varchar(2048) COMMENT '简介',
`distribute` tinyint(2) COMMENT '是否部署(0.否,1.是)',
`dataUpdate` tinyint(2) COMMENT '是否数据更新(0.否,1.是)',
`createTime` datetime COMMENT '创建时间',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '更新时间',
PRIMARY KEY (`id`)
`id` bigint(20) AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`siteId` bigint(20) COMMENT '站点Id',
`siteName` varchar(256) COMMENT '站点名称',
`appCode` varchar(256) COMMENT '应用编码',
`appName` varchar(256) COMMENT '应用名称',
`appIconPath` varchar(256) COMMENT '应用图标',
`appThemeName` varchar(256) COMMENT '应用主题名称',
`type` tinyint(2) COMMENT '类型(1.终端应用,2.移动端应用)',
`downDevCount` int(4) COMMENT '下发设备次数',
`shelves` tinyint(2) COMMENT '是否上架(0.下架,1.上架)',
`appType` tinyint(2) COMMENT '类型(1.应用程序,2.url)',
`fileName` varchar(255) COMMENT '文件名称',
`filePath` varchar(256) COMMENT '文件相对路径地址',
`distributeFilePath` varchar(256) COMMENT '文件部署路径地址',
`version` int(9) COMMENT '当前版本',
`summary` varchar(2048) COMMENT '简介',
`notes` varchar(512) COMMENT '更新说明',
`distribute` tinyint(2) COMMENT '是否部署(0.否,1.是)',
`dataUpdate` tinyint(2) COMMENT '是否数据更新(0.否,1.是)',
`createTime` datetime COMMENT '创建时间',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='自助终端应用';
-- ----------------------------
-- 自助终端应用数据集表
-- ----------------------------
......@@ -986,7 +992,7 @@ CREATE TABLE mortals_sys_app_info_field
`fieldName` varchar(64) COMMENT '字段名称',
`fieldType` varchar(64) COMMENT '字段类型(input.单行输入框,textarea.多行输入框,SELECT.下拉选项框,date.日期选择框)',
`dataType` varchar(64) COMMENT '数据类型(number.数字,string.字符串)',
`fieldValue` text COMMENT '字段值',
`fieldValue` longtext COMMENT '字段值',
`fieldLen` int(9) COMMENT '数据长度,默认128',
`fieldNull` tinyint(2) COMMENT '是否允许为空,(0.否,1.是)',
`isList` tinyint(2) COMMENT '字段是否列表显示(0.否,1.是)',
......@@ -1029,17 +1035,20 @@ CREATE TABLE mortals_sys_app_info_templete_field
-- 自助终端应用版本历史表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_sys_app_version`;
CREATE TABLE mortals_sys_app_version
(
`id` bigint(20) AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`appId` bigint(20) COMMENT 'app应用Id',
`appName` varchar(256) COMMENT '应用名称',
`version` varchar(256) COMMENT '版本号',
`notes` varchar(2048) COMMENT '更新说明',
`createTime` datetime COMMENT '创建时间',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '更新时间',
PRIMARY KEY (`id`)
CREATE TABLE `mortals_sys_app_version` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`appId` bigint(20) DEFAULT NULL COMMENT 'app应用Id',
`appName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT '' COMMENT '应用名称',
`version` int(9) COMMENT '版本号',
`notes` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT '' COMMENT '更新说明',
`fileName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT '' COMMENT '文件名称',
`filePath` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT '' COMMENT '文件相对路径地址',
`distributeFilePath` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT '' COMMENT '文件部署路径地址',
`used` tinyint(2) DEFAULT '0' COMMENT '是否使用(0.否,1.是)',
`createTime` datetime DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='自助终端应用版本历史';
......@@ -9379,50 +9379,7 @@ msg|String|消息|-
```
### 自助终端应用部署
**请求URL:** app/appDistribute
**请求方式:** POST
**内容类型:** application/json;charset=utf-8
**简要描述:** 自主终端部署
**请求参数:**
参数名称|类型| 必填 |描述
:---|:---|:----|:-------
id|Long| 是 |应用app Id
**请求样例:**
```
{
"id":1
}
```
**响应参数:**
参数名称 |参数类型|描述
:---|:---|:------
code|Integer|结果码(-1.失败,1.成功)
msg|String|消息
data|object|数据对象
**响应消息样例:**
```
{
"msg":"部署成功",
"code":1,
"data":{}
}
}
```
### 自助终端应用克隆
......@@ -10302,25 +10259,25 @@ appName|String|否|应用名称,字段前后添加%%模糊查询
**响应参数:**
参数名称|参数类型|描述
:---|:---|:------
code|Integer|结果码(-1.失败,1.成功)
msg|String|消息
data|object|数据对象
 per_page|Integer|每页条数
 total|Integer|总条数
 last_page|Integer|总页数
 current_page|Integer|当前页
 data|array|结果集列表|数组
  id|Long|主键ID,主键,自增长
  appId|Long|app应用Id
  appName|String|应用名称
  version|String|版本号
  notes|String|更新说明
  createTime|Date|创建时间
  updateUserId|Long|更新用户
  updateTime|Date|更新时间
dict|object|字典对象
参数名称| 参数类型 |描述
:---|:---------|:------
code| Integer |结果码(-1.失败,1.成功)
msg| String |消息
data| object |数据对象
 per_page| Integer |每页条数
 total| Integer |总条数
 last_page| Integer |总页数
 current_page| Integer |当前页
 data| array |结果集列表|数组
  id| Long |主键ID,主键,自增长
  appId| Long |app应用Id
  appName| String |应用名称
  version| Integer |版本号
  notes| String |更新说明
  createTime| Date |创建时间
  updateUserId| Long |更新用户
  updateTime| Date |更新时间
dict| object |字典对象
**响应消息样例:**
......@@ -10459,6 +10416,97 @@ msg|String|消息|-
```
### 自助终端应用使用
**请求URL:** app/version/used
**请求方式:** POST
**内容类型:** application/json;charset=utf-8
**简要描述:** 自主终端部署
**请求参数:**
参数名称|类型| 必填 |描述
:---|:---|:----|:-------
appVersionId|Long| 是 |应用版本 Id
**请求样例:**
```
{
"appVersionId":1
}
```
**响应参数:**
参数名称 |参数类型|描述
:---|:---|:------
code|Integer|结果码(-1.失败,1.成功)
msg|String|消息
data|object|数据对象
**响应消息样例:**
```
{
"msg":"应用成功",
"code":1,
"data":{}
}
}
```
### 自助终端应用预览
**请求URL:** app/version/preview
**请求方式:** GET
**内容类型:** application/json;charset=utf-8
**简要描述:** 自主终端预览
**请求参数:**
参数名称|类型| 必填 |描述
:---|:---|:----|:-------
appVersionId|Long| 是 |应用版本 Id
**请求样例:**
```
{
"appVersionId":1
}
```
**响应参数:**
参数名称 |参数类型|描述
:---|:---|:------
code|Integer|结果码(-1.失败,1.成功)
msg|String|消息
data|object|请求地址
**响应消息样例:**
```
{
"msg":"应用成功",
"code":1,
"data":"http://www.baidu.com/aa/"
}
}
```
## 字典附录
### isBusiness
......
......@@ -118,4 +118,10 @@ public final class Constant {
public static final String VERSION_PREFIX = "V";
/**
* 服务器http
*/
public final static String PARAM_SERVER_HTTP_URL = "server_http_url";
}
......@@ -11,7 +11,7 @@ import com.mortals.xhx.module.app.model.AppDatasetEntity;
* 自助终端应用实体对象
*
* @author zxfei
* @date 2022-11-30
* @date 2022-12-01
*/
public class AppEntity extends AppVo {
......@@ -72,11 +72,15 @@ public class AppEntity extends AppVo {
/**
* 当前版本
*/
private String version;
private Integer version;
/**
* 简介
*/
private String summary;
/**
* 更新说明
*/
private String notes;
/**
* 是否部署(0.否,1.是)
*/
......@@ -277,16 +281,16 @@ public class AppEntity extends AppVo {
}
/**
* 获取 当前版本
* @return String
* @return Integer
*/
public String getVersion(){
public Integer getVersion(){
return version;
}
/**
* 设置 当前版本
* @param version
*/
public void setVersion(String version){
public void setVersion(Integer version){
this.version = version;
}
/**
......@@ -303,6 +307,20 @@ public class AppEntity extends AppVo {
public void setSummary(String summary){
this.summary = summary;
}
/**
* 获取 更新说明
* @return String
*/
public String getNotes(){
return notes;
}
/**
* 设置 更新说明
* @param notes
*/
public void setNotes(String notes){
this.notes = notes;
}
/**
* 获取 是否部署(0.否,1.是)
* @return Integer
......@@ -375,6 +393,7 @@ public class AppEntity extends AppVo {
sb.append(",distributeFilePath:").append(getDistributeFilePath());
sb.append(",version:").append(getVersion());
sb.append(",summary:").append(getSummary());
sb.append(",notes:").append(getNotes());
sb.append(",distribute:").append(getDistribute());
sb.append(",dataUpdate:").append(getDataUpdate());
return sb.toString();
......@@ -408,10 +427,12 @@ public class AppEntity extends AppVo {
this.distributeFilePath = "";
this.version = "";
this.version = 0;
this.summary = "";
this.notes = null;
this.distribute = 0;
this.dataUpdate = 0;
......
......@@ -7,7 +7,7 @@ import com.mortals.xhx.module.app.model.AppEntity;
* 自助终端应用查询对象
*
* @author zxfei
* @date 2022-11-30
* @date 2022-12-01
*/
public class AppQuery extends AppEntity {
/** 开始 主键ID,主键,自增长 */
......@@ -106,12 +106,24 @@ public class AppQuery extends AppEntity {
/** 文件部署路径地址 */
private List<String> distributeFilePathList;
/** 当前版本 */
private List<String> versionList;
/** 开始 当前版本 */
private Integer versionStart;
/** 结束 当前版本 */
private Integer versionEnd;
/** 增加 当前版本 */
private Integer versionIncrement;
/** 当前版本列表 */
private List <Integer> versionList;
/** 简介 */
private List<String> summaryList;
/** 更新说明 */
private List<String> notesList;
/** 开始 是否部署(0.否,1.是) */
private Integer distributeStart;
......@@ -672,11 +684,59 @@ public class AppQuery extends AppEntity {
public void setDistributeFilePathList(List<String> distributeFilePathList){
this.distributeFilePathList = distributeFilePathList;
}
/**
* 获取 开始 当前版本
* @return versionStart
*/
public Integer getVersionStart(){
return this.versionStart;
}
/**
* 设置 开始 当前版本
* @param versionStart
*/
public void setVersionStart(Integer versionStart){
this.versionStart = versionStart;
}
/**
* 获取 结束 当前版本
* @return $versionEnd
*/
public Integer getVersionEnd(){
return this.versionEnd;
}
/**
* 设置 结束 当前版本
* @param versionEnd
*/
public void setVersionEnd(Integer versionEnd){
this.versionEnd = versionEnd;
}
/**
* 获取 增加 当前版本
* @return versionIncrement
*/
public Integer getVersionIncrement(){
return this.versionIncrement;
}
/**
* 设置 增加 当前版本
* @param versionIncrement
*/
public void setVersionIncrement(Integer versionIncrement){
this.versionIncrement = versionIncrement;
}
/**
* 获取 当前版本
* @return versionList
*/
public List<String> getVersionList(){
public List<Integer> getVersionList(){
return this.versionList;
}
......@@ -684,9 +744,10 @@ public class AppQuery extends AppEntity {
* 设置 当前版本
* @param versionList
*/
public void setVersionList(List<String> versionList){
public void setVersionList(List<Integer> versionList){
this.versionList = versionList;
}
/**
* 获取 简介
* @return summaryList
......@@ -702,6 +763,21 @@ public class AppQuery extends AppEntity {
public void setSummaryList(List<String> summaryList){
this.summaryList = summaryList;
}
/**
* 获取 更新说明
* @return notesList
*/
public List<String> getNotesList(){
return this.notesList;
}
/**
* 设置 更新说明
* @param notesList
*/
public void setNotesList(List<String> notesList){
this.notesList = notesList;
}
/**
* 获取 开始 是否部署(0.否,1.是)
* @return distributeStart
......@@ -1380,21 +1456,47 @@ public class AppQuery extends AppEntity {
return this;
}
/**
* 设置 当前版本
* 设置 当前版本
* @param version
*/
public AppQuery version(String version){
public AppQuery version(Integer version){
setVersion(version);
return this;
}
/**
* 设置 开始 当前版本
* @param versionStart
*/
public AppQuery versionStart(Integer versionStart){
this.versionStart = versionStart;
return this;
}
/**
* 设置 结束 当前版本
* @param versionEnd
*/
public AppQuery versionEnd(Integer versionEnd){
this.versionEnd = versionEnd;
return this;
}
/**
* 设置 增加 当前版本
* @param versionIncrement
*/
public AppQuery versionIncrement(Integer versionIncrement){
this.versionIncrement = versionIncrement;
return this;
}
/**
* 设置 当前版本
* @param versionList
*/
public AppQuery versionList(List<String> versionList){
public AppQuery versionList(List<Integer> versionList){
this.versionList = versionList;
return this;
}
......@@ -1418,6 +1520,25 @@ public class AppQuery extends AppEntity {
return this;
}
/**
* 设置 更新说明
* @param notes
*/
public AppQuery notes(String notes){
setNotes(notes);
return this;
}
/**
* 设置 更新说明
* @param notesList
*/
public AppQuery notesList(List<String> notesList){
this.notesList = notesList;
return this;
}
/**
* 设置 是否部署(0.否,1.是)
* @param distribute
......
......@@ -7,98 +7,170 @@ import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.app.model.vo.AppVersionVo;
/**
* 自助终端应用版本历史实体对象
*
* @author zxfei
* @date 2022-11-28
*/
* 自助终端应用版本历史实体对象
*
* @author zxfei
* @date 2022-12-01
*/
public class AppVersionEntity extends AppVersionVo {
private static final long serialVersionUID = 1L;
/**
* app应用Id
*/
* app应用Id
*/
private Long appId;
/**
* 应用名称
*/
* 应用名称
*/
private String appName;
/**
* 版本号
*/
private String version;
* 版本号
*/
private Integer version;
/**
* 更新说明
*/
* 更新说明
*/
private String notes;
/**
* 文件名称
*/
private String fileName;
/**
* 文件相对路径地址
*/
private String filePath;
/**
* 文件部署路径地址
*/
private String distributeFilePath;
/**
* 是否使用(0.否,1.是)
*/
private Integer used;
public AppVersionEntity(){}
/**
* 获取 app应用Id
* @return Long
*/
* 获取 app应用Id
* @return Long
*/
public Long getAppId(){
return appId;
}
/**
* 设置 app应用Id
* @param appId
*/
* 设置 app应用Id
* @param appId
*/
public void setAppId(Long appId){
this.appId = appId;
}
/**
* 获取 应用名称
* @return String
*/
* 获取 应用名称
* @return String
*/
public String getAppName(){
return appName;
}
/**
* 设置 应用名称
* @param appName
*/
* 设置 应用名称
* @param appName
*/
public void setAppName(String appName){
this.appName = appName;
}
/**
* 获取 版本号
* @return String
*/
public String getVersion(){
* 获取 版本号
* @return Integer
*/
public Integer getVersion(){
return version;
}
/**
* 设置 版本号
* @param version
*/
public void setVersion(String version){
* 设置 版本号
* @param version
*/
public void setVersion(Integer version){
this.version = version;
}
/**
* 获取 更新说明
* @return String
*/
* 获取 更新说明
* @return String
*/
public String getNotes(){
return notes;
}
/**
* 设置 更新说明
* @param notes
*/
* 设置 更新说明
* @param notes
*/
public void setNotes(String notes){
this.notes = notes;
}
/**
* 获取 文件名称
* @return String
*/
public String getFileName(){
return fileName;
}
/**
* 设置 文件名称
* @param fileName
*/
public void setFileName(String fileName){
this.fileName = fileName;
}
/**
* 获取 文件相对路径地址
* @return String
*/
public String getFilePath(){
return filePath;
}
/**
* 设置 文件相对路径地址
* @param filePath
*/
public void setFilePath(String filePath){
this.filePath = filePath;
}
/**
* 获取 文件部署路径地址
* @return String
*/
public String getDistributeFilePath(){
return distributeFilePath;
}
/**
* 设置 文件部署路径地址
* @param distributeFilePath
*/
public void setDistributeFilePath(String distributeFilePath){
this.distributeFilePath = distributeFilePath;
}
/**
* 获取 是否使用(0.否,1.是)
* @return Integer
*/
public Integer getUsed(){
return used;
}
/**
* 设置 是否使用(0.否,1.是)
* @param used
*/
public void setUsed(Integer used){
this.used = used;
}
@Override
public int hashCode() {
return this.getId().hashCode();
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
......@@ -106,7 +178,7 @@ public class AppVersionEntity extends AppVersionVo {
if (obj instanceof AppVersionEntity) {
AppVersionEntity tmp = (AppVersionEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
return true;
}
}
return false;
......@@ -118,17 +190,29 @@ public class AppVersionEntity extends AppVersionVo {
sb.append(",appName:").append(getAppName());
sb.append(",version:").append(getVersion());
sb.append(",notes:").append(getNotes());
sb.append(",fileName:").append(getFileName());
sb.append(",filePath:").append(getFilePath());
sb.append(",distributeFilePath:").append(getDistributeFilePath());
sb.append(",used:").append(getUsed());
return sb.toString();
}
public void initAttrValue(){
this.appId = null;
this.appId = null;
this.appName = "";
this.version = 0;
this.notes = "";
this.fileName = "";
this.appName = "";
this.filePath = "";
this.version = "";
this.distributeFilePath = "";
this.notes = "";
this.used = 0;
}
}
\ No newline at end of file
......@@ -3,11 +3,11 @@ package com.mortals.xhx.module.app.model;
import java.util.List;
import com.mortals.xhx.module.app.model.AppVersionEntity;
/**
* 自助终端应用版本历史查询对象
*
* @author zxfei
* @date 2022-11-28
*/
* 自助终端应用版本历史查询对象
*
* @author zxfei
* @date 2022-12-01
*/
public class AppVersionQuery extends AppVersionEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
......@@ -36,12 +36,42 @@ public class AppVersionQuery extends AppVersionEntity {
/** 应用名称 */
private List<String> appNameList;
/** 版本号 */
private List<String> versionList;
/** 开始 版本号 */
private Integer versionStart;
/** 结束 版本号 */
private Integer versionEnd;
/** 增加 版本号 */
private Integer versionIncrement;
/** 版本号列表 */
private List <Integer> versionList;
/** 更新说明 */
private List<String> notesList;
/** 文件名称 */
private List<String> fileNameList;
/** 文件相对路径地址 */
private List<String> filePathList;
/** 文件部署路径地址 */
private List<String> distributeFilePathList;
/** 开始 是否使用(0.否,1.是) */
private Integer usedStart;
/** 结束 是否使用(0.否,1.是) */
private Integer usedEnd;
/** 增加 是否使用(0.否,1.是) */
private Integer usedIncrement;
/** 是否使用(0.否,1.是)列表 */
private List <Integer> usedList;
/** 开始 创建时间 */
private String createTimeStart;
......@@ -75,528 +105,814 @@ public class AppVersionQuery extends AppVersionEntity {
public AppVersionQuery(){}
/**
* 获取 开始 主键ID,主键,自增长
* @return idStart
*/
* 获取 开始 主键ID,主键,自增长
* @return idStart
*/
public Long getIdStart(){
return this.idStart;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public void setIdStart(Long idStart){
this.idStart = idStart;
}
/**
* 获取 结束 主键ID,主键,自增长
* @return $idEnd
*/
* 获取 结束 主键ID,主键,自增长
* @return $idEnd
*/
public Long getIdEnd(){
return this.idEnd;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public void setIdEnd(Long idEnd){
this.idEnd = idEnd;
}
/**
* 获取 增加 主键ID,主键,自增长
* @return idIncrement
*/
* 获取 增加 主键ID,主键,自增长
* @return idIncrement
*/
public Long getIdIncrement(){
return this.idIncrement;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public void setIdIncrement(Long idIncrement){
this.idIncrement = idIncrement;
}
/**
* 获取 主键ID,主键,自增长
* @return idList
*/
* 获取 主键ID,主键,自增长
* @return idList
*/
public List<Long> getIdList(){
return this.idList;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
* 设置 主键ID,主键,自增长
* @param idList
*/
public void setIdList(List<Long> idList){
this.idList = idList;
}
/**
* 获取 开始 app应用Id
* @return appIdStart
*/
* 获取 开始 app应用Id
* @return appIdStart
*/
public Long getAppIdStart(){
return this.appIdStart;
}
/**
* 设置 开始 app应用Id
* @param appIdStart
*/
* 设置 开始 app应用Id
* @param appIdStart
*/
public void setAppIdStart(Long appIdStart){
this.appIdStart = appIdStart;
}
/**
* 获取 结束 app应用Id
* @return $appIdEnd
*/
* 获取 结束 app应用Id
* @return $appIdEnd
*/
public Long getAppIdEnd(){
return this.appIdEnd;
}
/**
* 设置 结束 app应用Id
* @param appIdEnd
*/
* 设置 结束 app应用Id
* @param appIdEnd
*/
public void setAppIdEnd(Long appIdEnd){
this.appIdEnd = appIdEnd;
}
/**
* 获取 增加 app应用Id
* @return appIdIncrement
*/
* 获取 增加 app应用Id
* @return appIdIncrement
*/
public Long getAppIdIncrement(){
return this.appIdIncrement;
}
/**
* 设置 增加 app应用Id
* @param appIdIncrement
*/
* 设置 增加 app应用Id
* @param appIdIncrement
*/
public void setAppIdIncrement(Long appIdIncrement){
this.appIdIncrement = appIdIncrement;
}
/**
* 获取 app应用Id
* @return appIdList
*/
* 获取 app应用Id
* @return appIdList
*/
public List<Long> getAppIdList(){
return this.appIdList;
}
/**
* 设置 app应用Id
* @param appIdList
*/
* 设置 app应用Id
* @param appIdList
*/
public void setAppIdList(List<Long> appIdList){
this.appIdList = appIdList;
}
/**
* 获取 应用名称
* @return appNameList
*/
* 获取 应用名称
* @return appNameList
*/
public List<String> getAppNameList(){
return this.appNameList;
}
/**
* 设置 应用名称
* @param appNameList
*/
* 设置 应用名称
* @param appNameList
*/
public void setAppNameList(List<String> appNameList){
this.appNameList = appNameList;
}
/**
* 获取 版本号
* @return versionList
*/
public List<String> getVersionList(){
* 获取 开始 版本号
* @return versionStart
*/
public Integer getVersionStart(){
return this.versionStart;
}
/**
* 设置 开始 版本号
* @param versionStart
*/
public void setVersionStart(Integer versionStart){
this.versionStart = versionStart;
}
/**
* 获取 结束 版本号
* @return $versionEnd
*/
public Integer getVersionEnd(){
return this.versionEnd;
}
/**
* 设置 结束 版本号
* @param versionEnd
*/
public void setVersionEnd(Integer versionEnd){
this.versionEnd = versionEnd;
}
/**
* 获取 增加 版本号
* @return versionIncrement
*/
public Integer getVersionIncrement(){
return this.versionIncrement;
}
/**
* 设置 增加 版本号
* @param versionIncrement
*/
public void setVersionIncrement(Integer versionIncrement){
this.versionIncrement = versionIncrement;
}
/**
* 获取 版本号
* @return versionList
*/
public List<Integer> getVersionList(){
return this.versionList;
}
/**
* 设置 版本号
* @param versionList
*/
public void setVersionList(List<String> versionList){
* 设置 版本号
* @param versionList
*/
public void setVersionList(List<Integer> versionList){
this.versionList = versionList;
}
/**
* 获取 更新说明
* @return notesList
*/
* 获取 更新说明
* @return notesList
*/
public List<String> getNotesList(){
return this.notesList;
}
/**
* 设置 更新说明
* @param notesList
*/
* 设置 更新说明
* @param notesList
*/
public void setNotesList(List<String> notesList){
this.notesList = notesList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
* 获取 文件名称
* @return fileNameList
*/
public List<String> getFileNameList(){
return this.fileNameList;
}
/**
* 设置 文件名称
* @param fileNameList
*/
public void setFileNameList(List<String> fileNameList){
this.fileNameList = fileNameList;
}
/**
* 获取 文件相对路径地址
* @return filePathList
*/
public List<String> getFilePathList(){
return this.filePathList;
}
/**
* 设置 文件相对路径地址
* @param filePathList
*/
public void setFilePathList(List<String> filePathList){
this.filePathList = filePathList;
}
/**
* 获取 文件部署路径地址
* @return distributeFilePathList
*/
public List<String> getDistributeFilePathList(){
return this.distributeFilePathList;
}
/**
* 设置 文件部署路径地址
* @param distributeFilePathList
*/
public void setDistributeFilePathList(List<String> distributeFilePathList){
this.distributeFilePathList = distributeFilePathList;
}
/**
* 获取 开始 是否使用(0.否,1.是)
* @return usedStart
*/
public Integer getUsedStart(){
return this.usedStart;
}
/**
* 设置 开始 是否使用(0.否,1.是)
* @param usedStart
*/
public void setUsedStart(Integer usedStart){
this.usedStart = usedStart;
}
/**
* 获取 结束 是否使用(0.否,1.是)
* @return $usedEnd
*/
public Integer getUsedEnd(){
return this.usedEnd;
}
/**
* 设置 结束 是否使用(0.否,1.是)
* @param usedEnd
*/
public void setUsedEnd(Integer usedEnd){
this.usedEnd = usedEnd;
}
/**
* 获取 增加 是否使用(0.否,1.是)
* @return usedIncrement
*/
public Integer getUsedIncrement(){
return this.usedIncrement;
}
/**
* 设置 增加 是否使用(0.否,1.是)
* @param usedIncrement
*/
public void setUsedIncrement(Integer usedIncrement){
this.usedIncrement = usedIncrement;
}
/**
* 获取 是否使用(0.否,1.是)
* @return usedList
*/
public List<Integer> getUsedList(){
return this.usedList;
}
/**
* 设置 是否使用(0.否,1.是)
* @param usedList
*/
public void setUsedList(List<Integer> usedList){
this.usedList = usedList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
public String getCreateTimeStart(){
return this.createTimeStart;
}
/**
* 设置 开始 创建时间
* @param createTimeStart
*/
* 设置 开始 创建时间
* @param createTimeStart
*/
public void setCreateTimeStart(String createTimeStart){
this.createTimeStart = createTimeStart;
}
/**
* 获取 结束 创建时间
* @return createTimeEnd
*/
* 获取 结束 创建时间
* @return createTimeEnd
*/
public String getCreateTimeEnd(){
return this.createTimeEnd;
}
/**
* 设置 结束 创建时间
* @param createTimeEnd
*/
* 设置 结束 创建时间
* @param createTimeEnd
*/
public void setCreateTimeEnd(String createTimeEnd){
this.createTimeEnd = createTimeEnd;
}
/**
* 获取 开始 更新用户
* @return updateUserIdStart
*/
* 获取 开始 更新用户
* @return updateUserIdStart
*/
public Long getUpdateUserIdStart(){
return this.updateUserIdStart;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public void setUpdateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
}
/**
* 获取 结束 更新用户
* @return $updateUserIdEnd
*/
* 获取 结束 更新用户
* @return $updateUserIdEnd
*/
public Long getUpdateUserIdEnd(){
return this.updateUserIdEnd;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public void setUpdateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
}
/**
* 获取 增加 更新用户
* @return updateUserIdIncrement
*/
* 获取 增加 更新用户
* @return updateUserIdIncrement
*/
public Long getUpdateUserIdIncrement(){
return this.updateUserIdIncrement;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
}
/**
* 获取 更新用户
* @return updateUserIdList
*/
* 获取 更新用户
* @return updateUserIdList
*/
public List<Long> getUpdateUserIdList(){
return this.updateUserIdList;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
* 设置 更新用户
* @param updateUserIdList
*/
public void setUpdateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
}
/**
* 获取 开始 更新时间
* @return updateTimeStart
*/
* 获取 开始 更新时间
* @return updateTimeStart
*/
public String getUpdateTimeStart(){
return this.updateTimeStart;
}
/**
* 设置 开始 更新时间
* @param updateTimeStart
*/
* 设置 开始 更新时间
* @param updateTimeStart
*/
public void setUpdateTimeStart(String updateTimeStart){
this.updateTimeStart = updateTimeStart;
}
/**
* 获取 结束 更新时间
* @return updateTimeEnd
*/
* 获取 结束 更新时间
* @return updateTimeEnd
*/
public String getUpdateTimeEnd(){
return this.updateTimeEnd;
}
/**
* 设置 结束 更新时间
* @param updateTimeEnd
*/
* 设置 结束 更新时间
* @param updateTimeEnd
*/
public void setUpdateTimeEnd(String updateTimeEnd){
this.updateTimeEnd = updateTimeEnd;
}
/**
* 设置 主键ID,主键,自增长
* @param id
*/
* 设置 主键ID,主键,自增长
* @param id
*/
public AppVersionQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public AppVersionQuery idStart(Long idStart){
this.idStart = idStart;
return this;
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public AppVersionQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public AppVersionQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
* 设置 主键ID,主键,自增长
* @param idList
*/
public AppVersionQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
return this;
}
/**
* 设置 app应用Id
* @param appId
*/
* 设置 app应用Id
* @param appId
*/
public AppVersionQuery appId(Long appId){
setAppId(appId);
return this;
}
/**
* 设置 开始 app应用Id
* @param appIdStart
*/
setAppId(appId);
return this;
}
/**
* 设置 开始 app应用Id
* @param appIdStart
*/
public AppVersionQuery appIdStart(Long appIdStart){
this.appIdStart = appIdStart;
return this;
this.appIdStart = appIdStart;
return this;
}
/**
* 设置 结束 app应用Id
* @param appIdEnd
*/
* 设置 结束 app应用Id
* @param appIdEnd
*/
public AppVersionQuery appIdEnd(Long appIdEnd){
this.appIdEnd = appIdEnd;
return this;
this.appIdEnd = appIdEnd;
return this;
}
/**
* 设置 增加 app应用Id
* @param appIdIncrement
*/
* 设置 增加 app应用Id
* @param appIdIncrement
*/
public AppVersionQuery appIdIncrement(Long appIdIncrement){
this.appIdIncrement = appIdIncrement;
return this;
this.appIdIncrement = appIdIncrement;
return this;
}
/**
* 设置 app应用Id
* @param appIdList
*/
* 设置 app应用Id
* @param appIdList
*/
public AppVersionQuery appIdList(List<Long> appIdList){
this.appIdList = appIdList;
return this;
}
return this;
}
/**
* 设置 应用名称
* @param appName
*/
/**
* 设置 应用名称
* @param appName
*/
public AppVersionQuery appName(String appName){
setAppName(appName);
return this;
return this;
}
/**
* 设置 应用名称
* @param appNameList
*/
* 设置 应用名称
* @param appNameList
*/
public AppVersionQuery appNameList(List<String> appNameList){
this.appNameList = appNameList;
return this;
return this;
}
/**
* 设置 版本号
* @param version
*/
public AppVersionQuery version(String version){
/**
* 设置 版本号
* @param version
*/
public AppVersionQuery version(Integer version){
setVersion(version);
return this;
return this;
}
/**
* 设置 版本号
* @param versionList
*/
public AppVersionQuery versionList(List<String> versionList){
* 设置 开始 版本号
* @param versionStart
*/
public AppVersionQuery versionStart(Integer versionStart){
this.versionStart = versionStart;
return this;
}
/**
* 设置 结束 版本号
* @param versionEnd
*/
public AppVersionQuery versionEnd(Integer versionEnd){
this.versionEnd = versionEnd;
return this;
}
/**
* 设置 增加 版本号
* @param versionIncrement
*/
public AppVersionQuery versionIncrement(Integer versionIncrement){
this.versionIncrement = versionIncrement;
return this;
}
/**
* 设置 版本号
* @param versionList
*/
public AppVersionQuery versionList(List<Integer> versionList){
this.versionList = versionList;
return this;
return this;
}
/**
* 设置 更新说明
* @param notes
*/
/**
* 设置 更新说明
* @param notes
*/
public AppVersionQuery notes(String notes){
setNotes(notes);
return this;
return this;
}
/**
* 设置 更新说明
* @param notesList
*/
* 设置 更新说明
* @param notesList
*/
public AppVersionQuery notesList(List<String> notesList){
this.notesList = notesList;
return this;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
* 设置 文件名称
* @param fileName
*/
public AppVersionQuery fileName(String fileName){
setFileName(fileName);
return this;
}
/**
* 设置 文件名称
* @param fileNameList
*/
public AppVersionQuery fileNameList(List<String> fileNameList){
this.fileNameList = fileNameList;
return this;
}
/**
* 设置 文件相对路径地址
* @param filePath
*/
public AppVersionQuery filePath(String filePath){
setFilePath(filePath);
return this;
}
/**
* 设置 文件相对路径地址
* @param filePathList
*/
public AppVersionQuery filePathList(List<String> filePathList){
this.filePathList = filePathList;
return this;
}
/**
* 设置 文件部署路径地址
* @param distributeFilePath
*/
public AppVersionQuery distributeFilePath(String distributeFilePath){
setDistributeFilePath(distributeFilePath);
return this;
}
/**
* 设置 文件部署路径地址
* @param distributeFilePathList
*/
public AppVersionQuery distributeFilePathList(List<String> distributeFilePathList){
this.distributeFilePathList = distributeFilePathList;
return this;
}
/**
* 设置 是否使用(0.否,1.是)
* @param used
*/
public AppVersionQuery used(Integer used){
setUsed(used);
return this;
}
/**
* 设置 开始 是否使用(0.否,1.是)
* @param usedStart
*/
public AppVersionQuery usedStart(Integer usedStart){
this.usedStart = usedStart;
return this;
}
/**
* 设置 结束 是否使用(0.否,1.是)
* @param usedEnd
*/
public AppVersionQuery usedEnd(Integer usedEnd){
this.usedEnd = usedEnd;
return this;
}
/**
* 设置 增加 是否使用(0.否,1.是)
* @param usedIncrement
*/
public AppVersionQuery usedIncrement(Integer usedIncrement){
this.usedIncrement = usedIncrement;
return this;
}
/**
* 设置 是否使用(0.否,1.是)
* @param usedList
*/
public AppVersionQuery usedList(List<Integer> usedList){
this.usedList = usedList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public AppVersionQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public AppVersionQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public AppVersionQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public AppVersionQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
* 设置 更新用户
* @param updateUserIdList
*/
public AppVersionQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
public List<AppVersionQuery> getOrConditionList(){
return this.orConditionList;
return this.orConditionList;
}
/**
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
public void setOrConditionList(List<AppVersionQuery> orConditionList){
this.orConditionList = orConditionList;
}
/**
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
public List<AppVersionQuery> getAndConditionList(){
return this.andConditionList;
}
/**
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
public void setAndConditionList(List<AppVersionQuery> andConditionList){
this.andConditionList = andConditionList;
}
......
......@@ -3,6 +3,7 @@ package com.mortals.xhx.module.app.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.app.dao.AppDao;
import com.mortals.xhx.module.app.model.AppEntity;
import com.mortals.xhx.module.site.model.SiteEntity;
......@@ -24,5 +25,6 @@ public interface AppService extends ICRUDService<AppEntity, Long> {
Rest<String> cloneAppsBySites(List<AppEntity> appList, List<SiteEntity> siteList, Context context);
AppDao getAppDao();
}
\ No newline at end of file
package com.mortals.xhx.module.app.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.app.model.AppEntity;
import com.mortals.xhx.module.app.model.AppVersionEntity;
/**
* AppVersionService
*
......@@ -11,4 +16,9 @@ import com.mortals.xhx.module.app.model.AppVersionEntity;
*/
public interface AppVersionService extends ICRUDService<AppVersionEntity,Long>{
Rest<String> appDistribute(AppVersionEntity appVersionEntity, Context context);
Rest<Void> appUsed(AppVersionEntity appVersionEntity, Context context);
}
\ No newline at end of file
......@@ -2,12 +2,14 @@ package com.mortals.xhx.module.app.service.impl;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.Constant;
import com.mortals.xhx.module.app.model.*;
import com.mortals.xhx.module.app.service.AppInfoFieldService;
import com.mortals.xhx.module.app.service.AppService;
import com.mortals.xhx.module.app.service.AppVersionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
......@@ -51,8 +53,8 @@ public class AppDatasetServiceImpl extends AbstractCRUDServiceImpl<AppDatasetDao
}
//更新版本号
AppEntity appEntity = appService.get(entity.getAppId(), context);
saveOrUpdateAppVersion(appEntity, context);
/* AppEntity appEntity = appService.get(entity.getAppId(), context);
saveOrUpdateAppVersion(appEntity, context);*/
super.saveAfter(entity, context);
}
......@@ -73,9 +75,6 @@ public class AppDatasetServiceImpl extends AbstractCRUDServiceImpl<AppDatasetDao
appInfoFieldService.save(entity.getAppInfoFieldList());
}
//更新版本号
AppEntity appEntity = appService.get(entity.getAppId(), context);
saveOrUpdateAppVersion(appEntity, context);
super.updateAfter(entity, context);
}
......@@ -100,6 +99,8 @@ public class AppDatasetServiceImpl extends AbstractCRUDServiceImpl<AppDatasetDao
versionEntity.setAppId(appEntity.getId());
versionEntity.setVersion(Constant.VERSION_PREFIX + newVersionNum);
versionEntity.setNotes("应用数据更新!");
versionEntity.setFileName(appEntity.getFileName());
versionEntity.setDistributeFilePath(appVersionEntity.getDistributeFilePath());
versionEntity.setCreateTime(new Date());
versionEntity.setCreateUserId(this.getContextUserId(context));
appVersionService.save(versionEntity, context);
......
package com.mortals.xhx.module.app.service.impl;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.google.common.collect.Lists;
import com.mortals.framework.model.DbMatchMode;
......@@ -9,6 +10,7 @@ import com.google.common.collect.Maps;
import cn.hutool.core.io.FileUtil;
import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.base.system.upload.service.UploadService;
import com.mortals.xhx.common.code.YesNoEnum;
......@@ -62,13 +64,12 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
@Override
protected void findAfter(AppEntity params, PageInfo pageInfo, Context context, List<AppEntity> list) throws AppException {
//统计站点
list.forEach(item->{
List<AppEntity> appEntityList = this.find(new AppQuery().appCode(item.getAppCode()), context);
// int count = this.count(new AppQuery().appCode(item.getAppCode()), context);
item.setApplianceSiteScope(appEntityList.size());
item.setSiteIdList(appEntityList.stream().map(AppEntity::getSiteId).collect(Collectors.toList()));
});
//统计站点
list.forEach(item -> {
List<AppEntity> appEntityList = this.find(new AppQuery().appCode(item.getAppCode()), context);
item.setApplianceSiteScope(appEntityList.size());
item.setSiteIdList(appEntityList.stream().map(AppEntity::getSiteId).collect(Collectors.toList()));
});
super.findAfter(params, pageInfo, context, list);
}
......@@ -100,7 +101,6 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
appEntity.setDistributeFilePath(disPath);
appEntity.setDistribute(YesNoEnum.YES.getValue());
appEntity.setUpdateTime(new Date());
this.update(appEntity, context);
return Rest.ok("应用部署成功!");
}
......@@ -198,9 +198,14 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
}
@Override
public AppDao getAppDao() {
return this.dao;
}
@Override
protected void saveBefore(AppEntity entity, Context context) throws AppException {
entity.setVersion(Constant.VERSION_PREFIX+"1.0");
super.saveBefore(entity, context);
}
......@@ -212,12 +217,92 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
versionEntity.setAppId(entity.getId());
versionEntity.setVersion(entity.getVersion());
versionEntity.setNotes("应用初始创建!");
versionEntity.setFileName(entity.getFileName());
versionEntity.setDistributeFilePath(entity.getDistributeFilePath());
versionEntity.setCreateTime(new Date());
versionEntity.setCreateUserId(this.getContextUserId(context));
appVersionService.save(versionEntity,context);
appVersionService.save(versionEntity, context);
super.saveAfter(entity, context);
}
@Override
public AppEntity update(AppEntity entity, Context context) throws AppException {
this.updateBefore(entity, context);
String filePath = entity.getFilePath();
String fileName = entity.getFileName();
entity.setFilePath(null);
entity.setFileName(null);
int iRet = this.dao.update(entity);
if (iRet == 0) {
throw new AppException(-1002, "更新失败!");
} else {
entity.setFileName(fileName);
entity.setFilePath(filePath);
this.updateAfter(entity, context);
return entity;
}
}
@Override
protected void updateAfter(AppEntity entity, Context context) throws AppException {
AppVersionQuery appVersionQuery = new AppVersionQuery();
appVersionQuery.setAppId(entity.getId());
List<OrderCol> orderColList = new ArrayList<>();
orderColList.add(new OrderCol("version", OrderCol.DESCENDING));
appVersionQuery.setOrderColList(orderColList);
List<AppVersionEntity> appVersionEntities = appVersionService.find(appVersionQuery, context);
//获取最大版本号
if (!ObjectUtils.isEmpty(appVersionEntities)) {
AppVersionEntity curAppVersionEntity = appVersionEntities.get(0);
// String versionNum = StrUtil.subAfter(curAppVersionEntity.getVersion(), Constant.VERSION_PREFIX, false);
Integer versionNum = curAppVersionEntity.getVersion();
// Integer newVersionNum = versionNum++;
AppVersionEntity appVersionEntity = new AppVersionEntity();
appVersionEntity.initAttrValue();
AppVersionEntity versionEntity = new AppVersionEntity();
versionEntity.initAttrValue();
versionEntity.setAppId(entity.getId());
versionEntity.setVersion(versionNum++);
versionEntity.setNotes(entity.getNotes());
versionEntity.setFileName(entity.getFileName());
versionEntity.setDistributeFilePath(entity.getDistributeFilePath());
versionEntity.setCreateTime(new Date());
versionEntity.setCreateUserId(this.getContextUserId(context));
appVersionService.save(versionEntity, context);
}
/*
String version = entity.getVersion();
String versionNum = StrUtil.subAfter(version, Constant.VERSION_PREFIX, false);
String newVersionNum = NumberUtil.add(versionNum, "0.1").setScale(1).toString();
AppVersionEntity appVersionEntity = new AppVersionEntity();
appVersionEntity.initAttrValue();
AppVersionEntity versionEntity = new AppVersionEntity();
versionEntity.initAttrValue();
versionEntity.setAppId(appEntity.getId());
versionEntity.setVersion(Constant.VERSION_PREFIX + newVersionNum);
versionEntity.setNotes("应用数据更新!");
versionEntity.setFileName(appEntity.getFileName());
versionEntity.setDistributeFilePath(appVersionEntity.getDistributeFilePath());
versionEntity.setCreateTime(new Date());
versionEntity.setCreateUserId(this.getContextUserId(context));
appVersionService.save(versionEntity, context);
appEntity.setVersion(versionEntity.getVersion());
appService.update(appEntity, context);
*/
super.updateAfter(entity, context);
}
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
//级联删除 appids 相关数据
......@@ -238,8 +323,8 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
if (!ObjectUtils.isEmpty(appDatasetDeleteList)) {
appDatasetService.removeList(appDatasetDeleteList, context);
List<AppInfoFieldEntity> appInfoFieldDeleteList = appInfoFieldService.find(new AppInfoFieldQuery().datasetIdList(appDatasetDeleteList.stream().map(AppDatasetEntity::getAppId).collect(Collectors.toList())));
if(!ObjectUtils.isEmpty(appInfoFieldDeleteList)){
appInfoFieldService.removeList(appInfoFieldDeleteList,context);
if (!ObjectUtils.isEmpty(appInfoFieldDeleteList)) {
appInfoFieldService.removeList(appInfoFieldDeleteList, context);
}
}
......@@ -307,7 +392,7 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
System.out.println(JSON.toJSONString(appClone));
System.out.println(NumberUtil.add("1.0","0.1").setScale(1).toString());
System.out.println(NumberUtil.add("1.0", "0.1").setScale(1).toString());
}
......
package com.mortals.xhx.module.app.service.impl;
import cn.hutool.core.io.FileUtil;
import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.xhx.base.system.upload.service.UploadService;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.Constant;
import com.mortals.xhx.common.utils.ZipUtils;
import com.mortals.xhx.module.app.model.AppEntity;
import com.mortals.xhx.module.app.model.AppVersionQuery;
import com.mortals.xhx.module.app.service.AppService;
import com.mortals.xhx.module.site.model.SiteEntity;
import com.mortals.xhx.module.site.service.SiteService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.app.dao.AppVersionDao;
import com.mortals.xhx.module.app.model.AppVersionEntity;
import com.mortals.xhx.module.app.service.AppVersionService;
import java.io.File;
import java.util.Date;
/**
* AppVersionService
* 自助终端应用版本历史 service实现
*
* @author zxfei
* @date 2022-11-28
*/
* AppVersionService
* 自助终端应用版本历史 service实现
*
* @author zxfei
* @date 2022-11-28
*/
@Service("appVersionService")
public class AppVersionServiceImpl extends AbstractCRUDServiceImpl<AppVersionDao, AppVersionEntity, Long> implements AppVersionService {
@Autowired
private AppService appService;
@Autowired
private SiteService siteService;
@Autowired
private UploadService uploadService;
@Override
public Rest<String> appDistribute(AppVersionEntity appVersionEntity, Context context) {
distributeFile(appVersionEntity, context);
return Rest.ok("部署应用成功!");
}
private AppEntity distributeFile(AppVersionEntity appVersionEntity, Context context) {
AppEntity appEntity = appService.get(appVersionEntity.getAppId(), context);
SiteEntity siteCache = siteService.getCache(appEntity.getSiteId().toString());
//判断文件是否存在
String targetFilePath = uploadService.getFilePath(appVersionEntity.getFilePath());
if (FileUtil.isEmpty(new File(targetFilePath))) {
throw new AppException("部署文件不存在!");
}
if (!FileUtil.getSuffix(appVersionEntity.getFilePath()).equals("zip")) {
throw new AppException("部署只支持zip文件!");
}
//部署路径是否存在 如果不存在 创建目录,
//文件构成目录 基础path +站点编码+应用编码 /basepath/sitecode/appcode/v2/
String path = GlobalSysInfo.getParamValue(Constant.APP_BASE_DISTRIBUTE_PATH, "/home/publish/app");
String siteCode = siteCache.getSiteCode();
String appcode = appEntity.getAppCode();
Integer version = appVersionEntity.getVersion();
String disPath = path + File.separator + siteCode + File.separator + appcode + File.separator + version;
//判断目标目录是否存在 如果存在 这删除
if (FileUtil.isDirectory(disPath)) {
FileUtil.del(disPath);
}
ZipUtils.unzip(new File(targetFilePath), disPath);
return appEntity;
}
@Override
public Rest<Void> appUsed(AppVersionEntity appVersionEntity, Context context) {
//使用 部署
AppEntity appEntity = distributeFile(appVersionEntity, context);
// ZipUtil.unzip(targetFilePath, disPath);
//更新app版本使用
appVersionEntity.setUsed(YesNoEnum.YES.getValue());
this.getDao().update(new AppVersionQuery().appId(appVersionEntity.getAppId()).used(YesNoEnum.NO.getValue()));
this.update(appVersionEntity, context);
//更新当前app
appEntity.setFileName(appVersionEntity.getFileName());
appEntity.setFilePath(appVersionEntity.getFilePath());
appEntity.setDistributeFilePath(appVersionEntity.getDistributeFilePath());
appEntity.setVersion(appVersionEntity.getVersion());
appEntity.setDistribute(YesNoEnum.YES.getValue());
appEntity.setUpdateTime(new Date());
appService.getAppDao().update(appEntity);
return Rest.ok("使用应用成功!");
}
}
\ No newline at end of file
package com.mortals.xhx.module.app.web;
import cn.hutool.core.net.url.UrlBuilder;
import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.Constant;
import com.mortals.xhx.module.app.model.AppQuery;
import com.mortals.xhx.module.product.model.ProductEntity;
import com.mortals.xhx.module.site.model.SiteEntity;
import com.mortals.xhx.module.site.model.SiteQuery;
import com.mortals.xhx.module.site.service.SiteService;
......@@ -37,6 +42,7 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
import static com.mortals.xhx.common.key.Constant.PARAM_SERVER_HTTP_URL;
/**
* 自助终端应用
......@@ -99,6 +105,8 @@ public class AppController extends BaseCRUDJsonBodyMappingController<AppService,
}
/**
* app应用克隆给其它站点
*/
......@@ -125,4 +133,14 @@ public class AppController extends BaseCRUDJsonBodyMappingController<AppService,
}
public static void main(String[] args) {
String homeUrl = "app/1/2";
String domainUrl = "http://192.168.0.98:11078";
String s = UrlBuilder.of(domainUrl).addPath("app").addPath("1").addPath("2").toString();
System.out.println(s);
}
}
\ No newline at end of file
package com.mortals.xhx.module.app.web;
import cn.hutool.core.net.url.UrlBuilder;
import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.Constant;
import com.mortals.xhx.module.app.model.AppEntity;
import com.mortals.xhx.module.app.service.AppService;
import com.mortals.xhx.module.site.model.SiteEntity;
import com.mortals.xhx.module.site.service.SiteService;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.app.model.AppVersionEntity;
import com.mortals.xhx.module.app.service.AppVersionService;
......@@ -18,26 +31,33 @@ import com.mortals.framework.util.StringUtils;
import java.util.*;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 自助终端应用版本历史
*
* @author zxfei
* @date 2022-11-28
*/
* 自助终端应用版本历史
*
* @author zxfei
* @date 2022-11-28
*/
@RestController
@RequestMapping("app/version")
public class AppVersionController extends BaseCRUDJsonBodyMappingController<AppVersionService,AppVersionEntity,Long> {
public class AppVersionController extends BaseCRUDJsonBodyMappingController<AppVersionService, AppVersionEntity, Long> {
@Autowired
private ParamService paramService;
public AppVersionController(){
super.setModuleDesc( "自助终端应用版本历史");
@Autowired
private SiteService siteService;
@Autowired
private AppService appService;
public AppVersionController() {
super.setModuleDesc("自助终端应用版本历史");
}
@Override
......@@ -49,9 +69,76 @@ public class AppVersionController extends BaseCRUDJsonBodyMappingController<AppV
@Override
protected void doListBefore(AppVersionEntity query, Map<String, Object> model, Context context) throws AppException {
List<OrderCol> orderColList = new ArrayList<>();
orderColList.add(new OrderCol("version",OrderCol.DESCENDING));
orderColList.add(new OrderCol("version", OrderCol.DESCENDING));
query.setOrderColList(orderColList);
super.doListBefore(query, model, context);
}
/**
* app历史版本使用
*/
@PostMapping(value = "used")
public Rest<String> used(Long appVersionId) {
String busiDesc = this.getModuleDesc() + "自助服务应用使用";
Rest<String> rest = Rest.ok(busiDesc + " 【成功】");
try {
if (ObjectUtils.isEmpty(appVersionId)) {
throw new AppException("应用版本Id不能为空!");
}
AppVersionEntity appVersionEntity = this.service.get(appVersionId, getContext());
if (ObjectUtils.isEmpty(appVersionEntity)) {
throw new AppException("当前应用版本不存在!appVersionId:" + appVersionId);
}
if (appVersionEntity.getUsed() == YesNoEnum.NO.getValue()) {
throw new AppException("当前应用使用中!");
}
recordSysLog(request, busiDesc + " 【成功】");
} catch (Exception e) {
log.error("自助服务应用预览", e);
rest = Rest.fail(super.convertException(e));
}
return rest;
}
/**
* app应用预览
*/
@GetMapping(value = "preview")
public Rest<String> preview(Long appVersionId) {
String busiDesc = this.getModuleDesc() + "自助服务应用预览";
Rest<String> rest = Rest.ok(busiDesc + " 【成功】");
try {
if (ObjectUtils.isEmpty(appVersionId)) {
throw new AppException("应用版本Id不能为空!");
}
AppVersionEntity appVersionEntity = this.service.get(appVersionId, getContext());
if (ObjectUtils.isEmpty(appVersionEntity)) {
throw new AppException("应用版本未找到!");
}
AppEntity appEntity = appService.get(appVersionEntity.getAppId(), getContext());
if (ObjectUtils.isEmpty(appEntity)) {
throw new AppException("当前应用不存在!appId:" + appVersionEntity.getAppId());
}
Rest<String> disRest = this.service.appDistribute(appVersionEntity, getContext());
SiteEntity siteEntity = siteService.get(appEntity.getSiteId(), getContext());
//请求地址 http://domian/app/siteCode/appcode/html
String domainUrl = GlobalSysInfo.getParamValue(Constant.PARAM_SERVER_HTTP_URL, "http://192.168.0.98:11078");
rest.setData(UrlBuilder.of(domainUrl)
.addPath("app")
.addPath(siteEntity.getSiteCode())
.addPath(appEntity.getAppCode())
.addPath(appEntity.getVersion().toString())
.toString());
recordSysLog(request, busiDesc + " 【成功】");
} catch (Exception e) {
log.error("自助服务应用预览", e);
return Rest.fail(super.convertException(e));
}
return rest;
}
}
\ No newline at end of file
......@@ -21,6 +21,7 @@
<result property="distributeFilePath" column="distributeFilePath" />
<result property="version" column="version" />
<result property="summary" column="summary" />
<result property="notes" column="notes" />
<result property="distribute" column="distribute" />
<result property="dataUpdate" column="dataUpdate" />
<result property="createTime" column="createTime" />
......@@ -88,6 +89,9 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('summary') or colPickMode == 1 and data.containsKey('summary')))">
a.summary,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('notes') or colPickMode == 1 and data.containsKey('notes')))">
a.notes,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('distribute') or colPickMode == 1 and data.containsKey('distribute')))">
a.distribute,
</if>
......@@ -114,18 +118,18 @@
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="AppEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_sys_app
(siteId,siteName,appCode,appName,appIconPath,appThemeName,type,downDevCount,shelves,appType,fileName,filePath,distributeFilePath,version,summary,distribute,dataUpdate,createTime,updateUserId,updateTime)
(siteId,siteName,appCode,appName,appIconPath,appThemeName,type,downDevCount,shelves,appType,fileName,filePath,distributeFilePath,version,summary,notes,distribute,dataUpdate,createTime,updateUserId,updateTime)
VALUES
(#{siteId},#{siteName},#{appCode},#{appName},#{appIconPath},#{appThemeName},#{type},#{downDevCount},#{shelves},#{appType},#{fileName},#{filePath},#{distributeFilePath},#{version},#{summary},#{distribute},#{dataUpdate},#{createTime},#{updateUserId},#{updateTime})
(#{siteId},#{siteName},#{appCode},#{appName},#{appIconPath},#{appThemeName},#{type},#{downDevCount},#{shelves},#{appType},#{fileName},#{filePath},#{distributeFilePath},#{version},#{summary},#{notes},#{distribute},#{dataUpdate},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_sys_app
(siteId,siteName,appCode,appName,appIconPath,appThemeName,type,downDevCount,shelves,appType,fileName,filePath,distributeFilePath,version,summary,distribute,dataUpdate,createTime,updateUserId,updateTime)
(siteId,siteName,appCode,appName,appIconPath,appThemeName,type,downDevCount,shelves,appType,fileName,filePath,distributeFilePath,version,summary,notes,distribute,dataUpdate,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.siteId},#{item.siteName},#{item.appCode},#{item.appName},#{item.appIconPath},#{item.appThemeName},#{item.type},#{item.downDevCount},#{item.shelves},#{item.appType},#{item.fileName},#{item.filePath},#{item.distributeFilePath},#{item.version},#{item.summary},#{item.distribute},#{item.dataUpdate},#{item.createTime},#{item.updateUserId},#{item.updateTime})
(#{item.siteId},#{item.siteName},#{item.appCode},#{item.appName},#{item.appIconPath},#{item.appThemeName},#{item.type},#{item.downDevCount},#{item.shelves},#{item.appType},#{item.fileName},#{item.filePath},#{item.distributeFilePath},#{item.version},#{item.summary},#{item.notes},#{item.distribute},#{item.dataUpdate},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
......@@ -192,9 +196,15 @@
<if test="(colPickMode==0 and data.containsKey('version')) or (colPickMode==1 and !data.containsKey('version'))">
a.version=#{data.version},
</if>
<if test="(colPickMode==0 and data.containsKey('versionIncrement')) or (colPickMode==1 and !data.containsKey('versionIncrement'))">
a.version=ifnull(a.version,0) + #{data.versionIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('summary')) or (colPickMode==1 and !data.containsKey('summary'))">
a.summary=#{data.summary},
</if>
<if test="(colPickMode==0 and data.containsKey('notes')) or (colPickMode==1 and !data.containsKey('notes'))">
a.notes=#{data.notes},
</if>
<if test="(colPickMode==0 and data.containsKey('distribute')) or (colPickMode==1 and !data.containsKey('distribute'))">
a.distribute=#{data.distribute},
</if>
......@@ -349,9 +359,14 @@
</trim>
<trim prefix="version=(case" suffix="ELSE version end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('version')) or (colPickMode==1 and !item.containsKey('version'))">
when a.id=#{item.id} then #{item.version}
</if>
<choose>
<when test="(colPickMode==0 and item.containsKey('version')) or (colPickMode==1 and !item.containsKey('version'))">
when a.id=#{item.id} then #{item.version}
</when>
<when test="(colPickMode==0 and item.containsKey('versionIncrement')) or (colPickMode==1 and !item.containsKey('versionIncrement'))">
when a.id=#{item.id} then ifnull(a.version,0) + #{item.versionIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="summary=(case" suffix="ELSE summary end),">
......@@ -361,6 +376,13 @@
</if>
</foreach>
</trim>
<trim prefix="notes=(case" suffix="ELSE notes end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('notes')) or (colPickMode==1 and !item.containsKey('notes'))">
when a.id=#{item.id} then #{item.notes}
</if>
</foreach>
</trim>
<trim prefix="distribute=(case" suffix="ELSE distribute end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
......@@ -781,10 +803,9 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('version')">
<if test="conditionParamRef.version != null and conditionParamRef.version != ''">
${_conditionType_} a.version like #{${_conditionParam_}.version}
<if test="conditionParamRef.version != null ">
${_conditionType_} a.version = #{${_conditionParam_}.version}
</if>
<if test="conditionParamRef.version == null">
${_conditionType_} a.version is null
......@@ -796,6 +817,13 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('versionStart') and conditionParamRef.versionStart != null">
${_conditionType_} a.version <![CDATA[ >= ]]> #{${_conditionParam_}.versionStart}
</if>
<if test="conditionParamRef.containsKey('versionEnd') and conditionParamRef.versionEnd != null">
${_conditionType_} a.version <![CDATA[ <= ]]> #{${_conditionParam_}.versionEnd}
</if>
<if test="conditionParamRef.containsKey('summary')">
<if test="conditionParamRef.summary != null and conditionParamRef.summary != ''">
......@@ -811,6 +839,21 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('notes')">
<if test="conditionParamRef.notes != null and conditionParamRef.notes != ''">
${_conditionType_} a.notes like #{${_conditionParam_}.notes}
</if>
<if test="conditionParamRef.notes == null">
${_conditionType_} a.notes is null
</if>
</if>
<if test="conditionParamRef.containsKey('notesList')">
${_conditionType_} a.notes in
<foreach collection="conditionParamRef.notesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('distribute')">
<if test="conditionParamRef.distribute != null ">
${_conditionType_} a.distribute = #{${_conditionParam_}.distribute}
......@@ -997,6 +1040,11 @@
<if test='orderCol.summary != null and "DESC".equalsIgnoreCase(orderCol.summary)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('notes')">
a.notes
<if test='orderCol.notes != null and "DESC".equalsIgnoreCase(orderCol.notes)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('distribute')">
a.distribute
<if test='orderCol.distribute != null and "DESC".equalsIgnoreCase(orderCol.distribute)'>DESC</if>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.app.dao.ibatis.AppVersionDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="AppVersionEntity" id="AppVersionEntity-Map">
<id property="id" column="id" />
<result property="appId" column="appId" />
<result property="appName" column="appName" />
<result property="version" column="version" />
<result property="notes" column="notes" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
<id property="id" column="id" />
<result property="appId" column="appId" />
<result property="appName" column="appName" />
<result property="version" column="version" />
<result property="notes" column="notes" />
<result property="fileName" column="fileName" />
<result property="filePath" column="filePath" />
<result property="distributeFilePath" column="distributeFilePath" />
<result property="used" column="used" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</resultMap>
<!-- 表所有列 -->
<sql id="_columns">
<trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('appId') or colPickMode == 1 and data.containsKey('appId')))">
a.appId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('appName') or colPickMode == 1 and data.containsKey('appName')))">
a.appName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('version') or colPickMode == 1 and data.containsKey('version')))">
a.version,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('notes') or colPickMode == 1 and data.containsKey('notes')))">
a.notes,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('appId') or colPickMode == 1 and data.containsKey('appId')))">
a.appId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('appName') or colPickMode == 1 and data.containsKey('appName')))">
a.appName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('version') or colPickMode == 1 and data.containsKey('version')))">
a.version,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('notes') or colPickMode == 1 and data.containsKey('notes')))">
a.notes,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('fileName') or colPickMode == 1 and data.containsKey('fileName')))">
a.fileName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('filePath') or colPickMode == 1 and data.containsKey('filePath')))">
a.filePath,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('distributeFilePath') or colPickMode == 1 and data.containsKey('distributeFilePath')))">
a.distributeFilePath,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('used') or colPickMode == 1 and data.containsKey('used')))">
a.used,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="AppVersionEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_sys_app_version
(appId,appName,version,notes,createTime,updateUserId,updateTime)
(appId,appName,version,notes,fileName,filePath,distributeFilePath,used,createTime,updateUserId,updateTime)
VALUES
(#{appId},#{appName},#{version},#{notes},#{createTime},#{updateUserId},#{updateTime})
(#{appId},#{appName},#{version},#{notes},#{fileName},#{filePath},#{distributeFilePath},#{used},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_sys_app_version
(appId,appName,version,notes,createTime,updateUserId,updateTime)
(appId,appName,version,notes,fileName,filePath,distributeFilePath,used,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.appId},#{item.appName},#{item.version},#{item.notes},#{item.createTime},#{item.updateUserId},#{item.updateTime})
(#{item.appId},#{item.appName},#{item.version},#{item.notes},#{item.fileName},#{item.filePath},#{item.distributeFilePath},#{item.used},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
......@@ -82,9 +98,27 @@
<if test="(colPickMode==0 and data.containsKey('version')) or (colPickMode==1 and !data.containsKey('version'))">
a.version=#{data.version},
</if>
<if test="(colPickMode==0 and data.containsKey('versionIncrement')) or (colPickMode==1 and !data.containsKey('versionIncrement'))">
a.version=ifnull(a.version,0) + #{data.versionIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('notes')) or (colPickMode==1 and !data.containsKey('notes'))">
a.notes=#{data.notes},
</if>
<if test="(colPickMode==0 and data.containsKey('fileName')) or (colPickMode==1 and !data.containsKey('fileName'))">
a.fileName=#{data.fileName},
</if>
<if test="(colPickMode==0 and data.containsKey('filePath')) or (colPickMode==1 and !data.containsKey('filePath'))">
a.filePath=#{data.filePath},
</if>
<if test="(colPickMode==0 and data.containsKey('distributeFilePath')) or (colPickMode==1 and !data.containsKey('distributeFilePath'))">
a.distributeFilePath=#{data.distributeFilePath},
</if>
<if test="(colPickMode==0 and data.containsKey('used')) or (colPickMode==1 and !data.containsKey('used'))">
a.used=#{data.used},
</if>
<if test="(colPickMode==0 and data.containsKey('usedIncrement')) or (colPickMode==1 and !data.containsKey('usedIncrement'))">
a.used=ifnull(a.used,0) + #{data.usedIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
......@@ -109,65 +143,103 @@
<update id="updateBatch" parameterType="paramDto">
update mortals_sys_app_version as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="appId=(case" suffix="ELSE appId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('appId')) or (colPickMode==1 and !item.containsKey('appId'))">
when a.id=#{item.id} then #{item.appId}
</when>
<when test="(colPickMode==0 and item.containsKey('appIdIncrement')) or (colPickMode==1 and !item.containsKey('appIdIncrement'))">
when a.id=#{item.id} then ifnull(a.appId,0) + #{item.appIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="appName=(case" suffix="ELSE appName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('appName')) or (colPickMode==1 and !item.containsKey('appName'))">
when a.id=#{item.id} then #{item.appName}
</if>
</foreach>
</trim>
<trim prefix="version=(case" suffix="ELSE version end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('version')) or (colPickMode==1 and !item.containsKey('version'))">
<trim prefix="appId=(case" suffix="ELSE appId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('appId')) or (colPickMode==1 and !item.containsKey('appId'))">
when a.id=#{item.id} then #{item.appId}
</when>
<when test="(colPickMode==0 and item.containsKey('appIdIncrement')) or (colPickMode==1 and !item.containsKey('appIdIncrement'))">
when a.id=#{item.id} then ifnull(a.appId,0) + #{item.appIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="appName=(case" suffix="ELSE appName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('appName')) or (colPickMode==1 and !item.containsKey('appName'))">
when a.id=#{item.id} then #{item.appName}
</if>
</foreach>
</trim>
<trim prefix="version=(case" suffix="ELSE version end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('version')) or (colPickMode==1 and !item.containsKey('version'))">
when a.id=#{item.id} then #{item.version}
</if>
</foreach>
</trim>
<trim prefix="notes=(case" suffix="ELSE notes end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('notes')) or (colPickMode==1 and !item.containsKey('notes'))">
when a.id=#{item.id} then #{item.notes}
</if>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="updateUserId=(case" suffix="ELSE updateUserId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.id=#{item.id} then #{item.updateUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
</when>
<when test="(colPickMode==0 and item.containsKey('versionIncrement')) or (colPickMode==1 and !item.containsKey('versionIncrement'))">
when a.id=#{item.id} then ifnull(a.version,0) + #{item.versionIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="notes=(case" suffix="ELSE notes end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('notes')) or (colPickMode==1 and !item.containsKey('notes'))">
when a.id=#{item.id} then #{item.notes}
</if>
</foreach>
</trim>
<trim prefix="fileName=(case" suffix="ELSE fileName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('fileName')) or (colPickMode==1 and !item.containsKey('fileName'))">
when a.id=#{item.id} then #{item.fileName}
</if>
</foreach>
</trim>
<trim prefix="filePath=(case" suffix="ELSE filePath end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('filePath')) or (colPickMode==1 and !item.containsKey('filePath'))">
when a.id=#{item.id} then #{item.filePath}
</if>
</foreach>
</trim>
<trim prefix="distributeFilePath=(case" suffix="ELSE distributeFilePath end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('distributeFilePath')) or (colPickMode==1 and !item.containsKey('distributeFilePath'))">
when a.id=#{item.id} then #{item.distributeFilePath}
</if>
</foreach>
</trim>
<trim prefix="used=(case" suffix="ELSE used end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('used')) or (colPickMode==1 and !item.containsKey('used'))">
when a.id=#{item.id} then #{item.used}
</when>
<when test="(colPickMode==0 and item.containsKey('usedIncrement')) or (colPickMode==1 and !item.containsKey('usedIncrement'))">
when a.id=#{item.id} then ifnull(a.used,0) + #{item.usedIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="updateUserId=(case" suffix="ELSE updateUserId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.id=#{item.id} then #{item.updateUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -284,197 +356,289 @@
${_conditionType_} a.id=#{${_conditionParam_}.id}
</if>
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.containsKey('idList')">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idList')">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if>
<if test="conditionParamRef.containsKey('appId')">
<if test="conditionParamRef.appId != null ">
${_conditionType_} a.appId = #{${_conditionParam_}.appId}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
<if test="conditionParamRef.appId == null">
${_conditionType_} a.appId is null
</if>
</if>
<if test="conditionParamRef.containsKey('appIdList')">
${_conditionType_} a.appId in
<foreach collection="conditionParamRef.appIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('appIdStart') and conditionParamRef.appIdStart != null">
${_conditionType_} a.appId <![CDATA[ >= ]]> #{${_conditionParam_}.appIdStart}
</if>
<if test="conditionParamRef.containsKey('appIdEnd') and conditionParamRef.appIdEnd != null">
${_conditionType_} a.appId <![CDATA[ <= ]]> #{${_conditionParam_}.appIdEnd}
</if>
<if test="conditionParamRef.containsKey('appId')">
<if test="conditionParamRef.appId != null ">
${_conditionType_} a.appId = #{${_conditionParam_}.appId}
</if>
<if test="conditionParamRef.appId == null">
${_conditionType_} a.appId is null
</if>
<if test="conditionParamRef.containsKey('appName')">
<if test="conditionParamRef.appName != null and conditionParamRef.appName != ''">
${_conditionType_} a.appName like #{${_conditionParam_}.appName}
</if>
<if test="conditionParamRef.containsKey('appIdList')">
${_conditionType_} a.appId in
<foreach collection="conditionParamRef.appIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.appName == null">
${_conditionType_} a.appName is null
</if>
<if test="conditionParamRef.containsKey('appIdStart') and conditionParamRef.appIdStart != null">
${_conditionType_} a.appId <![CDATA[ >= ]]> #{${_conditionParam_}.appIdStart}
</if>
<if test="conditionParamRef.containsKey('appNameList')">
${_conditionType_} a.appName in
<foreach collection="conditionParamRef.appNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('version')">
<if test="conditionParamRef.version != null ">
${_conditionType_} a.version = #{${_conditionParam_}.version}
</if>
<if test="conditionParamRef.containsKey('appIdEnd') and conditionParamRef.appIdEnd != null">
${_conditionType_} a.appId <![CDATA[ <= ]]> #{${_conditionParam_}.appIdEnd}
<if test="conditionParamRef.version == null">
${_conditionType_} a.version is null
</if>
</if>
<if test="conditionParamRef.containsKey('versionList')">
${_conditionType_} a.version in
<foreach collection="conditionParamRef.versionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('versionStart') and conditionParamRef.versionStart != null">
${_conditionType_} a.version <![CDATA[ >= ]]> #{${_conditionParam_}.versionStart}
</if>
<if test="conditionParamRef.containsKey('versionEnd') and conditionParamRef.versionEnd != null">
${_conditionType_} a.version <![CDATA[ <= ]]> #{${_conditionParam_}.versionEnd}
</if>
<if test="conditionParamRef.containsKey('appName')">
<if test="conditionParamRef.appName != null and conditionParamRef.appName != ''">
${_conditionType_} a.appName like #{${_conditionParam_}.appName}
</if>
<if test="conditionParamRef.appName == null">
${_conditionType_} a.appName is null
</if>
<if test="conditionParamRef.containsKey('notes')">
<if test="conditionParamRef.notes != null and conditionParamRef.notes != ''">
${_conditionType_} a.notes like #{${_conditionParam_}.notes}
</if>
<if test="conditionParamRef.containsKey('appNameList')">
${_conditionType_} a.appName in
<foreach collection="conditionParamRef.appNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.notes == null">
${_conditionType_} a.notes is null
</if>
</if>
<if test="conditionParamRef.containsKey('notesList')">
${_conditionType_} a.notes in
<foreach collection="conditionParamRef.notesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('version')">
<if test="conditionParamRef.version != null and conditionParamRef.version != ''">
${_conditionType_} a.version like #{${_conditionParam_}.version}
</if>
<if test="conditionParamRef.version == null">
${_conditionType_} a.version is null
</if>
<if test="conditionParamRef.containsKey('fileName')">
<if test="conditionParamRef.fileName != null and conditionParamRef.fileName != ''">
${_conditionType_} a.fileName like #{${_conditionParam_}.fileName}
</if>
<if test="conditionParamRef.containsKey('versionList')">
${_conditionType_} a.version in
<foreach collection="conditionParamRef.versionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.fileName == null">
${_conditionType_} a.fileName is null
</if>
</if>
<if test="conditionParamRef.containsKey('fileNameList')">
${_conditionType_} a.fileName in
<foreach collection="conditionParamRef.fileNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('notes')">
<if test="conditionParamRef.notes != null and conditionParamRef.notes != ''">
${_conditionType_} a.notes like #{${_conditionParam_}.notes}
</if>
<if test="conditionParamRef.notes == null">
${_conditionType_} a.notes is null
</if>
<if test="conditionParamRef.containsKey('filePath')">
<if test="conditionParamRef.filePath != null and conditionParamRef.filePath != ''">
${_conditionType_} a.filePath like #{${_conditionParam_}.filePath}
</if>
<if test="conditionParamRef.containsKey('notesList')">
${_conditionType_} a.notes in
<foreach collection="conditionParamRef.notesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.filePath == null">
${_conditionType_} a.filePath is null
</if>
</if>
<if test="conditionParamRef.containsKey('filePathList')">
${_conditionType_} a.filePath in
<foreach collection="conditionParamRef.filePathList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
<if test="conditionParamRef.containsKey('distributeFilePath')">
<if test="conditionParamRef.distributeFilePath != null and conditionParamRef.distributeFilePath != ''">
${_conditionType_} a.distributeFilePath like #{${_conditionParam_}.distributeFilePath}
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
<if test="conditionParamRef.distributeFilePath == null">
${_conditionType_} a.distributeFilePath is null
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.createTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('distributeFilePathList')">
${_conditionType_} a.distributeFilePath in
<foreach collection="conditionParamRef.distributeFilePathList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('used')">
<if test="conditionParamRef.used != null ">
${_conditionType_} a.used = #{${_conditionParam_}.used}
</if>
<if test="conditionParamRef.containsKey('updateUserId')">
<if test="conditionParamRef.updateUserId != null ">
${_conditionType_} a.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
<if test="conditionParamRef.used == null">
${_conditionType_} a.used is null
</if>
<if test="conditionParamRef.containsKey('updateUserIdList')">
${_conditionType_} a.updateUserId in
<foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('usedList')">
${_conditionType_} a.used in
<foreach collection="conditionParamRef.usedList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('usedStart') and conditionParamRef.usedStart != null">
${_conditionType_} a.used <![CDATA[ >= ]]> #{${_conditionParam_}.usedStart}
</if>
<if test="conditionParamRef.containsKey('usedEnd') and conditionParamRef.usedEnd != null">
${_conditionType_} a.used <![CDATA[ <= ]]> #{${_conditionParam_}.usedEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
<if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
${_conditionType_} a.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.createTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateUserId')">
<if test="conditionParamRef.updateUserId != null ">
${_conditionType_} a.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList')">
${_conditionType_} a.updateUserId in
<foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
${_conditionType_} a.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
order by
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('appId')">
a.appId
<if test='orderCol.appId != null and "DESC".equalsIgnoreCase(orderCol.appId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('appName')">
a.appName
<if test='orderCol.appName != null and "DESC".equalsIgnoreCase(orderCol.appName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('version')">
a.version
<if test='orderCol.version != null and "DESC".equalsIgnoreCase(orderCol.version)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('notes')">
a.notes
<if test='orderCol.notes != null and "DESC".equalsIgnoreCase(orderCol.notes)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('appId')">
a.appId
<if test='orderCol.appId != null and "DESC".equalsIgnoreCase(orderCol.appId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('appName')">
a.appName
<if test='orderCol.appName != null and "DESC".equalsIgnoreCase(orderCol.appName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('version')">
a.version
<if test='orderCol.version != null and "DESC".equalsIgnoreCase(orderCol.version)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('notes')">
a.notes
<if test='orderCol.notes != null and "DESC".equalsIgnoreCase(orderCol.notes)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('fileName')">
a.fileName
<if test='orderCol.fileName != null and "DESC".equalsIgnoreCase(orderCol.fileName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('filePath')">
a.filePath
<if test='orderCol.filePath != null and "DESC".equalsIgnoreCase(orderCol.filePath)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('distributeFilePath')">
a.distributeFilePath
<if test='orderCol.distributeFilePath != null and "DESC".equalsIgnoreCase(orderCol.distributeFilePath)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('used')">
a.used
<if test='orderCol.used != null and "DESC".equalsIgnoreCase(orderCol.used)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment