Commit 20cc3318 authored by 赵啸非's avatar 赵啸非

添加动态列表查询接口

parent ede4ef81
......@@ -927,45 +927,39 @@ 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` 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`)
`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) DEFAULT '1' COMMENT '类型(1.终端应用,2.移动端应用)',
`url` varchar(255) COMMENT '链接地址',
`downDevCount` int(4) DEFAULT '0' COMMENT '下发设备次数',
`shelves` tinyint(2) DEFAULT '0' COMMENT '是否上架(0.下架,1.上架)',
`appType` tinyint(2) DEFAULT '1' COMMENT '类型(1.应用程序,2.url)',
`fileName` varchar(255) COMMENT '文件名称',
`filePath` varchar(256) COMMENT '文件相对路径地址',
`distributeFilePath` varchar(256) COMMENT '文件部署路径地址',
`version` int(9) DEFAULT '0' COMMENT '当前版本',
`summary` varchar(2048) COMMENT '简介',
`notes` varchar(512) COMMENT '更新说明',
`distribute` tinyint(2) DEFAULT '0' COMMENT '是否部署(0.否,1.是)',
`dataUpdate` tinyint(2) DEFAULT '0' COMMENT '是否数据更新(0.否,1.是)',
`createTime` datetime COMMENT '创建时间',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='自助终端应用';
-- ----------------------------
-- 自助终端应用数据集表
-- ----------------------------
......
package com.mortals.xhx.module.app.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.xhx.module.app.model.AppDatasetEntity;
import com.mortals.xhx.module.app.model.AppDatasetQuery;
import com.mortals.xhx.module.app.model.AppInfoFieldEntity;
import com.mortals.xhx.module.matter.model.MatterEntity;
import java.util.List;
/**
* 自助终端应用数据集Dao
* 自助终端应用数据集 DAO接口
*
* @author zxfei
* @date 2022-11-28
*/
* 自助终端应用数据集Dao
* 自助终端应用数据集 DAO接口
*
* @author zxfei
* @date 2022-11-28
*/
public interface AppDatasetDao extends ICRUDDao<AppDatasetEntity,Long>{
public interface AppDatasetDao extends ICRUDDao<AppDatasetEntity, Long> {
String SQLID_CUSTOM_LIST = "getCustomList";
String SQLID_CUSTOM_COUNT = "getCustomListCount";
Result<AppInfoFieldEntity> getCustomList(AppDatasetQuery appDatasetQuery, PageInfo pageInfo);
}
package com.mortals.xhx.module.app.dao.ibatis;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.ParamDto;
import com.mortals.framework.model.Result;
import com.mortals.xhx.module.app.model.AppDatasetQuery;
import com.mortals.xhx.module.app.model.AppInfoFieldEntity;
import com.mortals.xhx.module.matter.model.MatterEntity;
import org.apache.ibatis.session.RowBounds;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.app.dao.AppDatasetDao;
import com.mortals.xhx.module.app.model.AppDatasetEntity;
import java.util.ArrayList;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
......@@ -16,6 +25,27 @@ import java.util.List;
@Repository("appDatasetDao")
public class AppDatasetDaoImpl extends BaseCRUDDaoMybatis<AppDatasetEntity,Long> implements AppDatasetDao {
@Override
public Result<AppInfoFieldEntity> getCustomList(AppDatasetQuery appDatasetQuery, PageInfo pageInfo) {
Result<AppInfoFieldEntity> result = new Result();
ParamDto paramDto = this.getQueryParam(appDatasetQuery);
int count = this.getCustomCount(paramDto);
List list = null;
if (count == 0) {
list = new ArrayList();
} else if (pageInfo.getPrePageResult() == -1) {
list = this.getSqlSession().selectList(this.getSqlId(SQLID_CUSTOM_LIST), paramDto);
} else {
RowBounds rowBounds = new RowBounds(pageInfo.getBeginIndex(), pageInfo.getPrePageResult());
list = this.getSqlSession().selectList(this.getSqlId(SQLID_CUSTOM_LIST), this.cpyQueryParamDto(paramDto), rowBounds);
}
pageInfo.setTotalResult(count);
result.setPageInfo(pageInfo);
result.setList(list);
return result;
}
public int getCustomCount(ParamDto paramDto) {
return this.getSqlSession().selectOne(this.getSqlId(SQLID_CUSTOM_COUNT), this.cpyQueryParamDto(paramDto));
}
}
......@@ -11,7 +11,7 @@ import com.mortals.xhx.module.app.model.AppDatasetEntity;
* 自助终端应用实体对象
*
* @author zxfei
* @date 2022-12-01
* @date 2022-12-14
*/
public class AppEntity extends AppVo {
......@@ -45,6 +45,10 @@ public class AppEntity extends AppVo {
* 类型(1.终端应用,2.移动端应用)
*/
private Integer type;
/**
* 链接地址
*/
private String url;
/**
* 下发设备次数
*/
......@@ -195,6 +199,20 @@ public class AppEntity extends AppVo {
public void setType(Integer type){
this.type = type;
}
/**
* 获取 链接地址
* @return String
*/
public String getUrl(){
return url;
}
/**
* 设置 链接地址
* @param url
*/
public void setUrl(String url){
this.url = url;
}
/**
* 获取 下发设备次数
* @return Integer
......@@ -385,6 +403,7 @@ public class AppEntity extends AppVo {
sb.append(",appIconPath:").append(getAppIconPath());
sb.append(",appThemeName:").append(getAppThemeName());
sb.append(",type:").append(getType());
sb.append(",url:").append(getUrl());
sb.append(",downDevCount:").append(getDownDevCount());
sb.append(",shelves:").append(getShelves());
sb.append(",appType:").append(getAppType());
......@@ -415,6 +434,8 @@ public class AppEntity extends AppVo {
this.type = 1;
this.url = null;
this.downDevCount = 0;
this.shelves = 0;
......@@ -427,7 +448,7 @@ public class AppEntity extends AppVo {
this.distributeFilePath = "";
this.version = 1;
this.version = 0;
this.summary = "";
......
......@@ -7,7 +7,7 @@ import com.mortals.xhx.module.app.model.AppEntity;
* 自助终端应用查询对象
*
* @author zxfei
* @date 2022-12-01
* @date 2022-12-14
*/
public class AppQuery extends AppEntity {
/** 开始 主键ID,主键,自增长 */
......@@ -61,6 +61,9 @@ public class AppQuery extends AppEntity {
/** 类型(1.终端应用,2.移动端应用)列表 */
private List <Integer> typeList;
/** 链接地址 */
private List<String> urlList;
/** 开始 下发设备次数 */
private Integer downDevCountStart;
......@@ -447,6 +450,21 @@ public class AppQuery extends AppEntity {
this.typeList = typeList;
}
/**
* 获取 链接地址
* @return urlList
*/
public List<String> getUrlList(){
return this.urlList;
}
/**
* 设置 链接地址
* @param urlList
*/
public void setUrlList(List<String> urlList){
this.urlList = urlList;
}
/**
* 获取 开始 下发设备次数
* @return downDevCountStart
......@@ -1264,6 +1282,25 @@ public class AppQuery extends AppEntity {
return this;
}
/**
* 设置 链接地址
* @param url
*/
public AppQuery url(String url){
setUrl(url);
return this;
}
/**
* 设置 链接地址
* @param urlList
*/
public AppQuery urlList(List<String> urlList){
this.urlList = urlList;
return this;
}
/**
* 设置 下发设备次数
* @param downDevCount
......
package com.mortals.xhx.module.app.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.app.model.AppDatasetEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 自助终端应用数据集视图对象
*
* @author zxfei
* @date 2022-11-28
*/
* 自助终端应用数据集视图对象
*
* @author zxfei
* @date 2022-11-28
*/
@Data
public class AppDatasetVo extends BaseEntityLong {
/**
* 字段编码
*/
private String fieldCode;
/**
* 字段名称
*/
private String fieldName;
/**
* 字段值
*/
private String fieldValue;
private List <Long> idList;
}
\ No newline at end of file
package com.mortals.xhx.module.app.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.app.model.AppDatasetEntity;
import com.mortals.xhx.module.app.model.AppDatasetQuery;
import com.mortals.xhx.module.app.model.AppInfoFieldEntity;
import com.mortals.xhx.module.matter.model.MatterEntity;
/**
* AppDatasetService
*
......@@ -11,4 +19,7 @@ import com.mortals.xhx.module.app.model.AppDatasetEntity;
*/
public interface AppDatasetService extends ICRUDService<AppDatasetEntity,Long>{
Result<AppInfoFieldEntity> findCustomList(AppDatasetQuery appDatasetQuery, PageInfo pageInfo, Context context) throws AppException;
}
\ No newline at end of file
......@@ -2,6 +2,8 @@ package com.mortals.xhx.module.app.service.impl;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.Constant;
import com.mortals.xhx.module.app.model.*;
......@@ -87,6 +89,11 @@ public class AppDatasetServiceImpl extends AbstractCRUDServiceImpl<AppDatasetDao
super.removeAfter(ids, context, result);
}
@Override
public Result<AppInfoFieldEntity> findCustomList(AppDatasetQuery appDatasetQuery, PageInfo pageInfo, Context context) throws AppException {
return this.dao.getCustomList(appDatasetQuery, pageInfo);
}
/* private void saveOrUpdateAppVersion(AppEntity appEntity, Context context) {
if (!ObjectUtils.isEmpty(appEntity)) {
String version = appEntity.getVersion();
......
package com.mortals.xhx.module.app.web;
import cn.hutool.core.util.StrUtil;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.app.model.AppDatasetQuery;
import com.mortals.xhx.module.app.model.AppInfoFieldEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
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.AppDatasetEntity;
import com.mortals.xhx.module.app.service.AppDatasetService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
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/dataset")
public class AppDatasetController extends BaseCRUDJsonBodyMappingController<AppDatasetService,AppDatasetEntity,Long> {
public class AppDatasetController extends BaseCRUDJsonBodyMappingController<AppDatasetService, AppDatasetEntity, Long> {
@Autowired
private ParamService paramService;
public AppDatasetController(){
super.setModuleDesc( "自助终端应用数据集");
public AppDatasetController() {
super.setModuleDesc("自助终端应用数据集");
}
@Override
......@@ -46,4 +61,22 @@ public class AppDatasetController extends BaseCRUDJsonBodyMappingController<AppD
}
@Override
protected void doListBefore(AppDatasetEntity query, Map<String, Object> model, Context context) throws AppException {
if (!ObjectUtils.isEmpty(query.getFieldCode())||!ObjectUtils.isEmpty(query.getFieldName())) {
AppDatasetQuery appDatasetQuery = new AppDatasetQuery();
appDatasetQuery.setFieldCode(query.getFieldCode());
appDatasetQuery.setFieldName(query.getFieldName());
String fieldValue = StrUtil.addPrefixIfNot(query.getFieldValue(), "%");
fieldValue = StrUtil.addSuffixIfNot(fieldValue, "%");
appDatasetQuery.setFieldValue(fieldValue);
PageInfo pageInfo = this.buildPageInfo(query);
Result<AppInfoFieldEntity> customResult = this.service.findCustomList(appDatasetQuery, pageInfo, context);
List<Long> datasetIdList = customResult.getList().stream().map(item -> item.getDatasetId()).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(datasetIdList)) {
query.setIdList(datasetIdList);
}
}
super.doListBefore(query, model, context);
}
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.app.dao.ibatis.AppDatasetDaoImpl">
<select id="getCustomListCount" parameterType="paramDto" resultType="int">
SELECT
count( 1 )
FROM
mortals_sys_app_dataset a
LEFT JOIN mortals_sys_app_info_field b ON a.id = b.datasetId
<trim suffixOverrides="where" suffix="">
where 1=1 and
<trim prefixOverrides="and" prefix="">
<if test="condition.fieldCode!=null and condition.fieldCode!=''">
and a.fieldCode = #{condition.fieldCode,jdbcType=VARCHAR}
</if>
<if test="condition.fieldName!=null and condition.fieldName!=''">
and a.fieldName = #{condition.fieldName,jdbcType=VARCHAR}
</if>
<if test="condition.fieldValue != null and condition.fieldValue != ''">
and a.fieldValue like #{condition.fieldValue}
</if>
</trim>
</trim>
</select>
<!-- 获取事项差集列表列表 -->
<select id="getCustomList" parameterType="paramDto" resultMap="MatterEntity-Map">
SELECT
<include refid="_columns_sub"/>
FROM
mortals_sys_app_dataset a
LEFT JOIN mortals_sys_app_info_field b ON a.id = b.datasetId
<trim suffixOverrides="where" suffix="">
where 1=1 and
<trim prefixOverrides="and" prefix="">
<if test="condition.fieldCode!=null and condition.fieldCode!=''">
and a.fieldCode = #{condition.fieldCode,jdbcType=VARCHAR}
</if>
<if test="condition.fieldName!=null and condition.fieldName!=''">
and a.fieldName = #{condition.fieldName,jdbcType=VARCHAR}
</if>
<if test="condition.fieldValue != null and condition.fieldValue != ''">
and a.fieldValue like #{condition.fieldValue}
</if>
</trim>
</trim>
</select>
</mapper>
\ No newline at end of file
......@@ -13,6 +13,7 @@
<result property="appIconPath" column="appIconPath" />
<result property="appThemeName" column="appThemeName" />
<result property="type" column="type" />
<result property="url" column="url" />
<result property="downDevCount" column="downDevCount" />
<result property="shelves" column="shelves" />
<result property="appType" column="appType" />
......@@ -65,6 +66,9 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('type') or colPickMode == 1 and data.containsKey('type')))">
a.type,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('url') or colPickMode == 1 and data.containsKey('url')))">
a.url,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('downDevCount') or colPickMode == 1 and data.containsKey('downDevCount')))">
a.downDevCount,
</if>
......@@ -118,18 +122,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,notes,distribute,dataUpdate,createTime,updateUserId,updateTime)
(siteId,siteName,appCode,appName,appIconPath,appThemeName,type,url,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},#{notes},#{distribute},#{dataUpdate},#{createTime},#{updateUserId},#{updateTime})
(#{siteId},#{siteName},#{appCode},#{appName},#{appIconPath},#{appThemeName},#{type},#{url},#{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,notes,distribute,dataUpdate,createTime,updateUserId,updateTime)
(siteId,siteName,appCode,appName,appIconPath,appThemeName,type,url,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.notes},#{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.url},#{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>
......@@ -166,6 +170,9 @@
<if test="(colPickMode==0 and data.containsKey('typeIncrement')) or (colPickMode==1 and !data.containsKey('typeIncrement'))">
a.type=ifnull(a.type,0) + #{data.typeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('url')) or (colPickMode==1 and !data.containsKey('url'))">
a.url=#{data.url},
</if>
<if test="(colPickMode==0 and data.containsKey('downDevCount')) or (colPickMode==1 and !data.containsKey('downDevCount'))">
a.downDevCount=#{data.downDevCount},
</if>
......@@ -300,6 +307,13 @@
</choose>
</foreach>
</trim>
<trim prefix="url=(case" suffix="ELSE url end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('url')) or (colPickMode==1 and !item.containsKey('url'))">
when a.id=#{item.id} then #{item.url}
</if>
</foreach>
</trim>
<trim prefix="downDevCount=(case" suffix="ELSE downDevCount end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
......@@ -695,6 +709,21 @@
${_conditionType_} a.type <![CDATA[ <= ]]> #{${_conditionParam_}.typeEnd}
</if>
<if test="conditionParamRef.containsKey('url')">
<if test="conditionParamRef.url != null and conditionParamRef.url != ''">
${_conditionType_} a.url like #{${_conditionParam_}.url}
</if>
<if test="conditionParamRef.url == null">
${_conditionType_} a.url is null
</if>
</if>
<if test="conditionParamRef.containsKey('urlList')">
${_conditionType_} a.url in
<foreach collection="conditionParamRef.urlList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('downDevCount')">
<if test="conditionParamRef.downDevCount != null ">
${_conditionType_} a.downDevCount = #{${_conditionParam_}.downDevCount}
......@@ -1000,6 +1029,11 @@
<if test='orderCol.type != null and "DESC".equalsIgnoreCase(orderCol.type)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('url')">
a.url
<if test='orderCol.url != null and "DESC".equalsIgnoreCase(orderCol.url)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('downDevCount')">
a.downDevCount
<if test='orderCol.downDevCount != null and "DESC".equalsIgnoreCase(orderCol.downDevCount)'>DESC</if>
......
......@@ -123,7 +123,7 @@ writelog() {
}
unix_is_centos() {
if [ ! -f "/etc/redhat-release" ]; then
if [ -f "/etc/redhat-release" ]; then
writelog "centos"
else
writelog "ubuntu"
......@@ -144,8 +144,8 @@ setup_java() {
system_version=$(unix_is_centos)
if [[ ${system_version} == "centos" ]]; then
writelog "centos java clear"
yum -y remove java-*-openjdk* #卸载centos中的openjdk
yum -y remove tzdata-java.noarch
# yum -y remove java-*-openjdk* #卸载centos中的openjdk
#yum -y remove tzdata-java.noarch
else
writelog "ubuntu java clear"
apt-get purge openjdk*
......@@ -154,21 +154,22 @@ setup_java() {
rm -rf ${JAVA_HOME}
mkdir -p ${JAVA_HOME}
cpu_info=$(check_cpu)
echo "${cpu_info}"
if [[ ${cpu_info} == *${ARM_64}* ]]; then
tar -zvx ${BASEDIR}/soft/java/arm_64/${JAVA_ARM_FILENAME} -C ${JAVA_HOME} --strip-components 1
tar -zvxf ${BASEDIR}/soft/java/arm_64/${JAVA_ARM_FILENAME} -C ${JAVA_HOME} --strip-components 1
echo "arm64"
elif [[ ${cpu_info} == *${X86_64}* ]]; then
tar -zvx ${BASEDIR}/soft/java/x86_64/${JAVA_FILENAME} -C ${JAVA_HOME} --strip-components 1
tar -zvxf ${BASEDIR}/soft/java/x86_64/${JAVA_FILENAME} -C ${JAVA_HOME} --strip-components 1
echo "x86_64"
else
tar -zvx ${BASEDIR}/soft/java/x86_64/${JAVA_FILENAME} -C ${JAVA_HOME} --strip-components 1
tar -zvxf ${BASEDIR}/soft/java/x86_64/${JAVA_FILENAME} -C ${JAVA_HOME} --strip-components 1
echo "x86_64"
fi
export JAVA_HOME=${JAVA_HOME}
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
echo "export JAVA_HOME=${JAVA_HOME}" >>/etc/profile
echo "export JRE_HOME=$JAVA_HOME/jre" >>/etc/profile
echo "export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib" >>/etc/profile
echo "export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin" >>/etc/profile
source /etc/profile #使配置立即生效
#检查Java安装和配置
cd $BASEDIR
......@@ -179,8 +180,9 @@ setup_redis() {
writelog "setup redis start"
rm -rf ${REDIS_EXECPATH}
mkdir -p ${REDIS_EXECPATH}
tar -zvx ${BASEDIR}/soft/${REDIS}/${REDIS_FILENAME} -C ${REDIS_EXECPATH} --strip-components 1
tar -zvxf ${BASEDIR}/soft/${REDIS}/${REDIS_FILENAME} -C ${REDIS_EXECPATH} --strip-components 1
cd ${REDIS_EXECPATH}
writelog "redis make start"
make
make PREFIX=${REDIS_EXECPATH} install
......@@ -223,7 +225,8 @@ setup_mysql() {
groupadd mysql
useradd -r -g mysql mysql
tar -zvx ${BASEDIR}/soft/${MYSQL}/${MYSQL_CENTOS_FILENAME} -C ${MYSQL_EXECPATH} --strip-components 1
writelog "exccmd tar -zvxf ${BASEDIR}/soft/${MYSQL}/${MYSQL_CENTOS_FILENAME} -C ${MYSQL_EXECPATH} --strip-components 1"
tar -zvxf ${BASEDIR}/soft/${MYSQL}/${MYSQL_CENTOS_FILENAME} -C ${MYSQL_EXECPATH} --strip-components 1
cd ${MYSQL_EXECPATH}
chown mysql:mysql mysql-files
chmod 750 mysql-file
......@@ -296,17 +299,22 @@ setup_nginx() {
if [[ ${system_version} == "centos" ]]; then
writelog "centos nginx clear"
yum remove nginx
writelog "nginx depend install"
yum -y install pcre-devel openssl openssl-devel gd-devel gcc gcc-c++
else
writelog "ubuntu nginx clear"
apt-get purge nginx*
apt-get -y install pcre-devel openssl openssl-devel gd-devel gcc gcc-c++
fi
rm -rf ${NGINX_EXECPATH}
mkdir -p ${NGINX_EXECPATH}
tar -zvx ${BASEDIR}/soft/${NGINX}/${NGINX_FILENAME} -C ${NGINX_EXECPATH} --strip-components 1
writelog "解压nginx:tar -zvxf ${BASEDIR}/soft/${NGINX}/${NGINX_FILENAME} -C ${NGINX_EXECPATH} --strip-components 1"
tar -zvxf ${BASEDIR}/soft/${NGINX}/${NGINX_FILENAME} -C ${NGINX_EXECPATH} --strip-components 1
cd ${NGINX_EXECPATH}
./configure --prefix=${NGINX_EXECPATH} --conf-path=${NGINX_CONF}
writelog "nginx make start"
make
make install
......@@ -331,6 +339,8 @@ setup_nginx() {
systemctl daemon-reload
systemctl start ${NGINX}
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
writelog "setup nginx finish"
}
......@@ -423,15 +433,17 @@ nacos_deploy() {
rm -rf ${NACOS_SERVICE}
rm -rf ${NACOS_EXECPATH}
mkdir -p ${NACOS_EXECPATH}
tar -zvx $BASEDIR/release/nacos/${NACOS_FILENAME} -C ${NACOS_EXECPATH} --strip-components 1
writelog "tar -zvxf $BASEDIR/release/nacos/${NACOS_FILENAME} -C ${NACOS_EXECPATH} --strip-components 1"
tar -zvxf $BASEDIR/release/nacos/${NACOS_FILENAME} -C ${NACOS_EXECPATH} --strip-components 1
writelog "${NACOS}_deploy init db..."
writelog " mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${NACOS_EXECPATH}/db/nacos.sql"
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${NACOS_EXECPATH}/db/nacos.sql
echo "" >$NACOS_SERVICE
echo "[Unit]" >>$NACOS_SERVICE
echo "Description=nacos" >>$NACOS_SERVICE
echo "After=network.target" >>$NACOS_SERVICE
echo "" >>$NACOS_SERVICE
echo "" >>$NACOS_SERVICE,mq
echo "[Service]" >>$NACOS_SERVICE
echo "Environment=\"JAVA_HOME=$JAVA_HOME\"" >>$NACOS_SERVICE
echo "Type=forking" >>$NACOS_SERVICE
......@@ -454,7 +466,7 @@ nacos_deploy() {
smart_gateway_deploy() {
writelog "${SMART_GATEWAY}_deploy"
clear_deploy ${SMART_GATEWAY} ${SMART_GATEWAY_SERVICE} ${SMART_GATEWAY_EXECPATH}
tar -zvx ${BASEDIR}/release/${SMART_GATEWAY}/${SMART_GATEWAY_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${SMART_GATEWAY}/${SMART_GATEWAY_FILENAME} -C ${PUBLISH_PATH}
build_service ${SMART_GATEWAY} ${SMART_GATEWAY_SERVICE} ${SMART_GATEWAY_EXECPATH}
......@@ -469,8 +481,8 @@ smart_portal_platform_deploy() {
clear_ui_deploy ${SMART_PORTAL_PLATFORM_UI_EXECPATH}
writelog "${SMART_PORTAL_PLATFORM_UI_EXECPATH}_clear_finish"
tar -zvx ${BASEDIR}/release/${SMART_PORTAL_PLATFORM}/${SMART_PORTAL_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvx ${BASEDIR}/release/${SMART_PORTAL_PLATFORM}/${SMART_PORTAL_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${SMART_PORTAL_PLATFORM}/${SMART_PORTAL_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${SMART_PORTAL_PLATFORM}/${SMART_PORTAL_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${SMART_PORTAL_PLATFORM_EXECPATH}/db/db.sql
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${SMART_PORTAL_PLATFORM_EXECPATH}/db/menu.sql
......@@ -487,8 +499,8 @@ smart_base_platform_deploy() {
clear_ui_deploy ${SMART_BASE_PLATFORM_UI_EXECPATH}
writelog "${SMART_BASE_PLATFORM_UI_EXECPATH}_clear_finish"
tar -zvx ${BASEDIR}/release/${SMART_BASE_PLATFORM}/${SMART_BASE_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvx ${BASEDIR}/release/${SMART_BASE_PLATFORM}/${SMART_BASE_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${SMART_BASE_PLATFORM}/${SMART_BASE_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${SMART_BASE_PLATFORM}/${SMART_BASE_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${SMART_BASE_PLATFORM_EXECPATH}/db/base.sql
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${SMART_BASE_PLATFORM_EXECPATH}/db/base_modules.sql
......@@ -509,8 +521,8 @@ device_platform_deploy() {
clear_ui_deploy ${DEVICE_PLATFORM_UI_EXECPATH}
writelog "${SMA_PLATFORM_UI_EXECPATH}_clear_finish"
tar -zvx ${BASEDIR}/release/${DEVICE_PLATFORM}/${DEVICE_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvx ${BASEDIR}/release/${DEVICE_PLATFORM}/${DEVICE_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${DEVICE_PLATFORM}/${DEVICE_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${DEVICE_PLATFORM}/${DEVICE_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${DEVICE_PLATFORM_EXECPATH}/db/base.sql
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${DEVICE_PLATFORM_EXECPATH}/db/module.sql
......@@ -530,8 +542,8 @@ log_platform_deploy() {
clear_ui_deploy ${LOG_PLATFORM_UI_EXECPATH}
writelog "${LOG_PLATFORM_UI_EXECPATH}_clear_finish"
tar -zvx ${BASEDIR}/release/${LOG_PLATFORM}/${LOG_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvx ${BASEDIR}/release/${LOG_PLATFORM}/${LOG_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${LOG_PLATFORM}/${LOG_PLATFORM_FILENAME} -C ${PUBLISH_PATH}
tar -zvxf ${BASEDIR}/release/${LOG_PLATFORM}/${LOG_PLATFORM_UI_FILENAME} -C ${PUBLISH_PATH}
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${LOG_PLATFORM_EXECPATH}/db/base.sql
mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} <${LOG_PLATFORM_EXECPATH}/db/module.sql
......@@ -595,7 +607,7 @@ program_deploy() {
}
project_deploy() {
shell_lock
#shell_lock
init_deploy
nacos_deploy
smart_gateway_deploy
......@@ -603,7 +615,7 @@ project_deploy() {
smart_base_platform_deploy
device_platform_deploy
log_platform_deploy
shell_unlock
#shell_unlock
}
function menu() { #显示菜单
......
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