mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
modefying DAO layer
This commit is contained in:
parent
6e25a0bc3e
commit
5717e81cfb
@ -52,6 +52,7 @@
|
|||||||
<Bundle-Description>Application Management Common Bundle</Bundle-Description>
|
<Bundle-Description>Application Management Common Bundle</Bundle-Description>
|
||||||
<Import-Package>
|
<Import-Package>
|
||||||
org.wso2.carbon.device.mgt.common.*;version="${carbon.device.mgt.version}",
|
org.wso2.carbon.device.mgt.common.*;version="${carbon.device.mgt.version}",
|
||||||
|
org.wso2.carbon.device.mgt.core.dto;version="${carbon.device.mgt.version}",
|
||||||
com.google.gson,
|
com.google.gson,
|
||||||
io.swagger.annotations.*;resolution:=optional,
|
io.swagger.annotations.*;resolution:=optional,
|
||||||
com.fasterxml.jackson.annotation,
|
com.fasterxml.jackson.annotation,
|
||||||
|
|||||||
@ -21,6 +21,7 @@ package org.wso2.carbon.device.application.mgt.common;
|
|||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -36,6 +37,11 @@ public class Application {
|
|||||||
required = true)
|
required = true)
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "description",
|
||||||
|
value = "Description of the application",
|
||||||
|
required = true)
|
||||||
|
private String description;
|
||||||
|
|
||||||
@ApiModelProperty(name = "appCategory",
|
@ApiModelProperty(name = "appCategory",
|
||||||
value = "Category of the application",
|
value = "Category of the application",
|
||||||
required = true,
|
required = true,
|
||||||
@ -81,6 +87,10 @@ public class Application {
|
|||||||
example = "1, 2, 3")
|
example = "1, 2, 3")
|
||||||
private int deviceTypeId;
|
private int deviceTypeId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "appRating",
|
||||||
|
value = "Rating of the aplication")
|
||||||
|
private int appRating;
|
||||||
|
|
||||||
@ApiModelProperty(name = "deviceType",
|
@ApiModelProperty(name = "deviceType",
|
||||||
value = "Related device type of the application",
|
value = "Related device type of the application",
|
||||||
required = true,
|
required = true,
|
||||||
@ -93,6 +103,8 @@ public class Application {
|
|||||||
example = "REMOVED, ACTIVE")
|
example = "REMOVED, ACTIVE")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
|
private DeviceType deviceTypeObj;
|
||||||
|
|
||||||
@ApiModelProperty(name = "applicationReleases",
|
@ApiModelProperty(name = "applicationReleases",
|
||||||
value = "List of application releases",
|
value = "List of application releases",
|
||||||
required = true)
|
required = true)
|
||||||
@ -186,9 +198,7 @@ public class Application {
|
|||||||
return deviceType;
|
return deviceType;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceType(String deviceType) {
|
public void setDeviceType(String deviceType) { this.deviceType = deviceType; }
|
||||||
this.deviceType = deviceType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getDeviceTypeId() {
|
public int getDeviceTypeId() {
|
||||||
return deviceTypeId;
|
return deviceTypeId;
|
||||||
@ -201,4 +211,16 @@ public class Application {
|
|||||||
public String getStatus() { return status; }
|
public String getStatus() { return status; }
|
||||||
|
|
||||||
public void setStatus(String status) { this.status = status; }
|
public void setStatus(String status) { this.status = status; }
|
||||||
|
|
||||||
|
public String getDescription() { return description; }
|
||||||
|
|
||||||
|
public void setDescription(String description) { this.description = description; }
|
||||||
|
|
||||||
|
public int getAppRating() { return appRating; }
|
||||||
|
|
||||||
|
public void setAppRating(int appRating) { this.appRating = appRating; }
|
||||||
|
|
||||||
|
public DeviceType getDeviceTypeObj() { return deviceTypeObj; }
|
||||||
|
|
||||||
|
public void setDeviceTypeObj(DeviceType deviceTypeObj) { this.deviceTypeObj = deviceTypeObj; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,16 +18,22 @@
|
|||||||
*/
|
*/
|
||||||
package org.wso2.carbon.device.application.mgt.common;
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
@ApiModel(value = "ApplicationRelease", description = "This class holds the details when releasing an Application to application store")
|
@ApiModel(value = "ApplicationRelease", description = "This class holds the details when releasing an Application to application store")
|
||||||
public class ApplicationRelease {
|
public class ApplicationRelease {
|
||||||
|
|
||||||
|
@JsonIgnore
|
||||||
@ApiModelProperty(name = "id",
|
@ApiModelProperty(name = "id",
|
||||||
value = "ID of the application release")
|
value = "ID of the application release")
|
||||||
private int id;
|
private int id;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "description",
|
||||||
|
value = "Description of the application release")
|
||||||
|
private String description;
|
||||||
|
|
||||||
@ApiModelProperty(name = "version",
|
@ApiModelProperty(name = "version",
|
||||||
value = "Version of the application release")
|
value = "Version of the application release")
|
||||||
private String version;
|
private String version;
|
||||||
@ -98,14 +104,26 @@ public class ApplicationRelease {
|
|||||||
value = "URL which is used for WEB-CLIP")
|
value = "URL which is used for WEB-CLIP")
|
||||||
private String url;
|
private String url;
|
||||||
|
|
||||||
|
//todo remove and add string called current state
|
||||||
@ApiModelProperty(name = "lifecycleState",
|
@ApiModelProperty(name = "lifecycleState",
|
||||||
value = "Latest Lifecycle state of the application release")
|
value = "Latest Lifecycle state of the application release")
|
||||||
private LifecycleState lifecycleState;
|
private LifecycleState lifecycleState;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "supportedOsVersions",
|
||||||
|
value = "Application release supported OS versions")
|
||||||
|
private String supportedOsVersions;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "currentState",
|
||||||
|
value = "Current state of the application release")
|
||||||
|
private String currentState;
|
||||||
|
|
||||||
@ApiModelProperty(name = "packageName",
|
@ApiModelProperty(name = "packageName",
|
||||||
value = "Application bundle identifier")
|
value = "Application bundle identifier")
|
||||||
private String packageName;
|
private String packageName;
|
||||||
|
|
||||||
|
public ApplicationRelease() {
|
||||||
|
}
|
||||||
|
|
||||||
public int getRatedUsers() {
|
public int getRatedUsers() {
|
||||||
return ratedUsers;
|
return ratedUsers;
|
||||||
}
|
}
|
||||||
@ -257,4 +275,16 @@ public class ApplicationRelease {
|
|||||||
public String getPackageName() {
|
public String getPackageName() {
|
||||||
return packageName;
|
return packageName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getDescription() { return description; }
|
||||||
|
|
||||||
|
public void setDescription(String description) { this.description = description; }
|
||||||
|
|
||||||
|
public String getSupportedOsVersions() { return supportedOsVersions; }
|
||||||
|
|
||||||
|
public void setSupportedOsVersions(String supportedOsVersions) { this.supportedOsVersions = supportedOsVersions; }
|
||||||
|
|
||||||
|
public String getCurrentState() { return currentState; }
|
||||||
|
|
||||||
|
public void setCurrentState(String currentState) { this.currentState = currentState; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -32,6 +32,7 @@ import org.wso2.carbon.device.application.mgt.common.services.ApplicationStorage
|
|||||||
import org.wso2.carbon.device.application.mgt.common.services.SubscriptionManager;
|
import org.wso2.carbon.device.application.mgt.common.services.SubscriptionManager;
|
||||||
import org.wso2.carbon.device.application.mgt.core.config.Configuration;
|
import org.wso2.carbon.device.application.mgt.core.config.Configuration;
|
||||||
import org.wso2.carbon.device.application.mgt.core.config.ConfigurationManager;
|
import org.wso2.carbon.device.application.mgt.core.config.ConfigurationManager;
|
||||||
|
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
|
||||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
||||||
|
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.PreparedStatement;
|
||||||
@ -47,6 +48,66 @@ public class Util {
|
|||||||
|
|
||||||
private static final Log log = LogFactory.getLog(Util.class);
|
private static final Log log = LogFactory.getLog(Util.class);
|
||||||
|
|
||||||
|
// /**
|
||||||
|
// * To create application object from the result set retrieved from the Database.
|
||||||
|
// *
|
||||||
|
// * @param rs ResultSet
|
||||||
|
// * @return List of Applications that is retrieved from the Database.
|
||||||
|
// * @throws SQLException SQL Exception
|
||||||
|
// * @throws JSONException JSONException.
|
||||||
|
// */
|
||||||
|
// public static List<Application> loadApplications(ResultSet rs) throws SQLException, JSONException {
|
||||||
|
//
|
||||||
|
// List<Application> applications = new ArrayList<>();
|
||||||
|
// Application application = null;
|
||||||
|
// int applicationId = -1;
|
||||||
|
// boolean hasNext = rs.next();
|
||||||
|
//
|
||||||
|
// while (hasNext) {
|
||||||
|
// if (applicationId != rs.getInt("APP_ID")) {
|
||||||
|
// if (application != null) {
|
||||||
|
// applications.add(application);
|
||||||
|
// }
|
||||||
|
// applicationId = rs.getInt("APP_ID");
|
||||||
|
// application = new Application();
|
||||||
|
// application.setTags(new ArrayList<>());
|
||||||
|
// application.setUnrestrictedRoles(new ArrayList<>());
|
||||||
|
// application.setId(applicationId);
|
||||||
|
// application.setName(rs.getString("APP_NAME"));
|
||||||
|
// application.setType(rs.getString("APP_TYPE"));
|
||||||
|
// application.setAppCategory(rs.getString("APP_CATEGORY"));
|
||||||
|
// application.setSubType(rs.getString("SUB_TYPE"));
|
||||||
|
// application.setPaymentCurrency(rs.getString("CURRENCY"));
|
||||||
|
// application.setIsRestricted(rs.getBoolean("RESTRICTED"));
|
||||||
|
// application.setStatus(rs.getString("STATUS"));
|
||||||
|
// String tag = rs.getString("APP_TAG");
|
||||||
|
// String unrestrictedRole = rs.getString("ROLE");
|
||||||
|
// if (tag != null) {
|
||||||
|
// application.getTags().add(tag);
|
||||||
|
// }
|
||||||
|
// if (unrestrictedRole != null) {
|
||||||
|
// application.getUnrestrictedRoles().add(unrestrictedRole);
|
||||||
|
// }
|
||||||
|
// } else {
|
||||||
|
// String tag = rs.getString("APP_TAG");
|
||||||
|
// String unrestrictedRole = rs.getString("ROLE");
|
||||||
|
// if (application != null) {
|
||||||
|
// if (tag != null && !application.getTags().contains(tag)) {
|
||||||
|
// application.getTags().add(tag);
|
||||||
|
// }
|
||||||
|
// if (unrestrictedRole != null && !application.getUnrestrictedRoles().contains(unrestrictedRole)) {
|
||||||
|
// application.getUnrestrictedRoles().add(unrestrictedRole);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// hasNext = rs.next();
|
||||||
|
// if (!hasNext) {
|
||||||
|
// applications.add(application);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// return applications;
|
||||||
|
// }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* To create application object from the result set retrieved from the Database.
|
* To create application object from the result set retrieved from the Database.
|
||||||
*
|
*
|
||||||
@ -67,36 +128,38 @@ public class Util {
|
|||||||
if (application != null) {
|
if (application != null) {
|
||||||
applications.add(application);
|
applications.add(application);
|
||||||
}
|
}
|
||||||
applicationId = rs.getInt("APP_ID");
|
|
||||||
application = new Application();
|
application = new Application();
|
||||||
application.setTags(new ArrayList<>());
|
application.setApplicationReleases(new ArrayList<>());
|
||||||
application.setUnrestrictedRoles(new ArrayList<>());
|
applicationId = rs.getInt("APP_ID");
|
||||||
application.setId(applicationId);
|
application.setId(applicationId);
|
||||||
application.setName(rs.getString("APP_NAME"));
|
application.setName(rs.getString("APP_NAME"));
|
||||||
|
application.setDescription(rs.getString("APP_DESCRIPTION"));
|
||||||
application.setType(rs.getString("APP_TYPE"));
|
application.setType(rs.getString("APP_TYPE"));
|
||||||
application.setAppCategory(rs.getString("APP_CATEGORY"));
|
application.setSubType(rs.getString("APP_SUB_TYPE"));
|
||||||
application.setSubType(rs.getString("SUB_TYPE"));
|
application.setPaymentCurrency(rs.getString("APP_CURRENCY"));
|
||||||
application.setPaymentCurrency(rs.getString("CURRENCY"));
|
application.setStatus(rs.getString("APP_STATUS"));
|
||||||
application.setIsRestricted(rs.getBoolean("RESTRICTED"));
|
application.setAppRating(rs.getInt("APP_RATING)"));
|
||||||
application.setStatus(rs.getString("STATUS"));
|
DeviceType deviceType = new DeviceType();
|
||||||
String tag = rs.getString("APP_TAG");
|
application.setDeviceTypeObj(deviceType);
|
||||||
String unrestrictedRole = rs.getString("ROLE");
|
|
||||||
if (tag != null) {
|
|
||||||
application.getTags().add(tag);
|
|
||||||
}
|
|
||||||
if (unrestrictedRole != null) {
|
|
||||||
application.getUnrestrictedRoles().add(unrestrictedRole);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
String tag = rs.getString("APP_TAG");
|
ApplicationRelease appRelease = new ApplicationRelease();
|
||||||
String unrestrictedRole = rs.getString("ROLE");
|
appRelease.setDescription(rs.getString("RELEASE_DESCRIPTION"));
|
||||||
if (application != null) {
|
appRelease.setUuid(rs.getString("RELEASE_UUID"));
|
||||||
if (tag != null && !application.getTags().contains(tag)) {
|
appRelease.setReleaseType(rs.getString("RELEASE_TYPE"));
|
||||||
application.getTags().add(tag);
|
appRelease.setVersion(rs.getString("RELEASE_VERSION"));
|
||||||
}
|
appRelease.setAppStoredLoc(rs.getString("AP_RELEASE_STORED_LOC"));
|
||||||
if (unrestrictedRole != null && !application.getUnrestrictedRoles().contains(unrestrictedRole)) {
|
appRelease.setBannerLoc(rs.getString("RELEASE_BANNER_LOC"));
|
||||||
application.getUnrestrictedRoles().add(unrestrictedRole);
|
appRelease.setScreenshotLoc1("RELEASE_SC1");
|
||||||
}
|
appRelease.setScreenshotLoc2("RELEASE_SC2");
|
||||||
|
appRelease.setScreenshotLoc3("RELEASE_SC3");
|
||||||
|
appRelease.setPrice(rs.getDouble(" RELEASE_PRICE"));
|
||||||
|
appRelease.setMetaData(rs.getString("RELEASE.META_INFO"));
|
||||||
|
appRelease.setSupportedOsVersions(rs.getString("RELEASE_SUP_OS_VERSIONS"));
|
||||||
|
appRelease.setRating(rs.getDouble("RELEASE_RATING"));
|
||||||
|
appRelease.setCurrentState(rs.getString("RELEASE_CURRENT_STATE"));
|
||||||
|
appRelease.setRatedUsers(rs.getInt("RATED_USER_COUNT"));
|
||||||
|
if (application != null && application.getApplicationReleases() != null) {
|
||||||
|
application.getApplicationReleases().add(appRelease);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
hasNext = rs.next();
|
hasNext = rs.next();
|
||||||
|
|||||||
@ -121,6 +121,117 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Override
|
||||||
|
// public ApplicationList getApplications(Filter filter, int tenantId) throws ApplicationManagementDAOException {
|
||||||
|
// if (log.isDebugEnabled()) {
|
||||||
|
// log.debug("Getting application data from the database");
|
||||||
|
// log.debug(String.format("Filter: limit=%s, offset=%s", filter.getLimit(), filter.getOffset()));
|
||||||
|
// }
|
||||||
|
// int paramIndex = 1;
|
||||||
|
// Connection conn;
|
||||||
|
// PreparedStatement stmt = null;
|
||||||
|
// ResultSet rs = null;
|
||||||
|
// ApplicationList applicationList = new ApplicationList();
|
||||||
|
// Pagination pagination = new Pagination();
|
||||||
|
// String sql = "SELECT "
|
||||||
|
// + "AP_APP.ID AS APP_ID,"
|
||||||
|
// + " AP_APP.NAME AS APP_NAME,"
|
||||||
|
// + " AP_APP.TYPE AS APP_TYPE,"
|
||||||
|
// + " AP_APP.APP_CATEGORY AS APP_CATEGORY,"
|
||||||
|
// + " AP_APP.SUB_TYPE AS SUB_TYPE,"
|
||||||
|
// + " AP_APP.CURRENCY AS CURRENCY, "
|
||||||
|
// + "AP_APP.RESTRICTED AS RESTRICTED,"
|
||||||
|
// + " AP_APP_TAG.TAG AS APP_TAG,"
|
||||||
|
// + " AP_UNRESTRICTED_ROLE.ROLE AS ROLE "
|
||||||
|
// + "FROM ((AP_APP LEFT JOIN AP_APP_TAG ON AP_APP.ID = AP_APP_TAG.AP_APP_ID) "
|
||||||
|
// + "LEFT JOIN AP_UNRESTRICTED_ROLE ON AP_APP.ID = AP_UNRESTRICTED_ROLE.AP_APP_ID) "
|
||||||
|
// + "WHERE AP_APP.TENANT_ID = ?";
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// if (filter == null) {
|
||||||
|
// throw new ApplicationManagementDAOException("Filter need to be instantiated");
|
||||||
|
// }
|
||||||
|
// if (filter.getAppType() != null && !filter.getAppType().isEmpty()) {
|
||||||
|
// sql += " AND AP_APP.TYPE ";
|
||||||
|
// sql += "= ?";
|
||||||
|
// }
|
||||||
|
// if (filter.getAppCategory() != null && !filter.getAppCategory().isEmpty()) {
|
||||||
|
// sql += " AND AP_APP.APP_CATEGORY ";
|
||||||
|
// sql += "= ?";
|
||||||
|
// }
|
||||||
|
// if (filter.getAppName() != null && !filter.getAppName().isEmpty()) {
|
||||||
|
// sql += " AND LOWER (AP_APP.NAME) ";
|
||||||
|
// if (filter.isFullMatch()) {
|
||||||
|
// sql += "= ?";
|
||||||
|
// } else {
|
||||||
|
// sql += "LIKE ?";
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// if (filter.getDeviceType() != null ) {
|
||||||
|
// sql += " AND AP_APP.DEVICE_TYPE_ID ";
|
||||||
|
// sql += "= ?";
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// String defaultSortOrder = "ASC";
|
||||||
|
// if (filter.getSortBy() != null && !filter.getSortBy().isEmpty()) {
|
||||||
|
// defaultSortOrder = filter.getSortBy();
|
||||||
|
// }
|
||||||
|
// sql += " ORDER BY APP_ID " + defaultSortOrder +" LIMIT ? OFFSET ? ";
|
||||||
|
//
|
||||||
|
// pagination.setLimit(filter.getLimit());
|
||||||
|
// pagination.setOffset(filter.getOffset());
|
||||||
|
//
|
||||||
|
// try {
|
||||||
|
// conn = this.getDBConnection();
|
||||||
|
// stmt = conn.prepareStatement(sql);
|
||||||
|
// stmt.setInt(paramIndex++, tenantId);
|
||||||
|
//
|
||||||
|
// if (filter.getAppType() != null && !filter.getAppType().isEmpty()) {
|
||||||
|
// stmt.setString(paramIndex++, filter.getAppType());
|
||||||
|
// }
|
||||||
|
// if (filter.getAppCategory() != null && !filter.getAppCategory().isEmpty()) {
|
||||||
|
// stmt.setString(paramIndex++, filter.getAppCategory());
|
||||||
|
// }
|
||||||
|
// if (filter.getAppName() != null && !filter.getAppName().isEmpty()) {
|
||||||
|
// if (filter.isFullMatch()) {
|
||||||
|
// stmt.setString(paramIndex++, filter.getAppName().toLowerCase());
|
||||||
|
// } else {
|
||||||
|
// stmt.setString(paramIndex++, "%" + filter.getAppName().toLowerCase() + "%");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// if (filter.getDeviceType() != null ) {
|
||||||
|
// stmt.setInt(paramIndex++, filter.getDeviceType().getId());
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// if (filter.getLimit() == 0) {
|
||||||
|
// stmt.setInt(paramIndex++, 100);
|
||||||
|
// } else {
|
||||||
|
// stmt.setInt(paramIndex++, filter.getLimit());
|
||||||
|
// }
|
||||||
|
// stmt.setInt(paramIndex, filter.getOffset());
|
||||||
|
// rs = stmt.executeQuery();
|
||||||
|
// applicationList.setApplications(Util.loadApplications(rs));
|
||||||
|
// applicationList.setPagination(pagination);
|
||||||
|
// applicationList.getPagination().setSize(filter.getOffset());
|
||||||
|
// applicationList.getPagination().setCount(applicationList.getApplications().size());
|
||||||
|
//
|
||||||
|
// } catch (SQLException e) {
|
||||||
|
// throw new ApplicationManagementDAOException("Error occurred while getting application list for the tenant"
|
||||||
|
// + " " + tenantId + ". While executing " + sql, e);
|
||||||
|
// } catch (DBConnectionException e) {
|
||||||
|
// throw new ApplicationManagementDAOException("Error occurred while obtaining the DB connection while "
|
||||||
|
// + "getting application list for the tenant " + tenantId,
|
||||||
|
// e);
|
||||||
|
// } catch (JSONException e) {
|
||||||
|
// throw new ApplicationManagementDAOException("Error occurred while parsing JSON ", e);
|
||||||
|
// } finally {
|
||||||
|
// Util.cleanupResources(stmt, rs);
|
||||||
|
// }
|
||||||
|
// return applicationList;
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ApplicationList getApplications(Filter filter, int tenantId) throws ApplicationManagementDAOException {
|
public ApplicationList getApplications(Filter filter, int tenantId) throws ApplicationManagementDAOException {
|
||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
@ -134,19 +245,35 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
|||||||
ApplicationList applicationList = new ApplicationList();
|
ApplicationList applicationList = new ApplicationList();
|
||||||
Pagination pagination = new Pagination();
|
Pagination pagination = new Pagination();
|
||||||
String sql = "SELECT "
|
String sql = "SELECT "
|
||||||
+ "AP_APP.ID AS APP_ID,"
|
+ "AP_APP.ID AS APP_ID, "
|
||||||
+ " AP_APP.NAME AS APP_NAME,"
|
+ "AP_APP.NAME AS APP_NAME, "
|
||||||
+ " AP_APP.TYPE AS APP_TYPE,"
|
+ "AP_APP.DESCRIPTION AS APP_DESCRIPTION, "
|
||||||
+ " AP_APP.APP_CATEGORY AS APP_CATEGORY,"
|
+ "AP_APP.TYPE AS APP_TYPE, "
|
||||||
+ " AP_APP.SUB_TYPE AS SUB_TYPE,"
|
+ "AP_APP.STATUS AS APP_STATUS, "
|
||||||
+ " AP_APP.CURRENCY AS CURRENCY, "
|
+ "AP_APP.SUB_TYPE AS APP_SUB_TYPE, "
|
||||||
+ "AP_APP.RESTRICTED AS RESTRICTED,"
|
+ "AP_APP.CURRENCY AS APP_CURRENCY, "
|
||||||
+ " AP_APP_TAG.TAG AS APP_TAG,"
|
+ "AP_APP.RATING AS APP_RATING, "
|
||||||
+ " AP_UNRESTRICTED_ROLE.ROLE AS ROLE "
|
+ "AP_APP.DEVICE_TYPE_ID AS APP_DEVICE_TYPE_ID, "
|
||||||
+ "FROM ((AP_APP LEFT JOIN AP_APP_TAG ON AP_APP.ID = AP_APP_TAG.AP_APP_ID) "
|
+ "AP_APP_RELEASE.DESCRIPTION AS RELEASE_DESCRIPTION, "
|
||||||
+ "LEFT JOIN AP_UNRESTRICTED_ROLE ON AP_APP.ID = AP_UNRESTRICTED_ROLE.AP_APP_ID) "
|
+ "AP_APP_RELEASE.VERSION AS RELEASE_VERSION, "
|
||||||
+ "WHERE AP_APP.TENANT_ID = ?";
|
+ "AP_APP_RELEASE.UUID AS RELEASE_UUID, "
|
||||||
|
+ "AP_APP_RELEASE.RELEASE_TYPE AS RELEASE_TYPE, "
|
||||||
|
+ "AP_APP_RELEASE.STORED_LOCATION AS AP_RELEASE_STORED_LOC, "
|
||||||
|
+ "AP_APP_RELEASE.BANNER_LOCATION AS AP_RELEASE_BANNER_LOC, "
|
||||||
|
+ "AP_APP_RELEASE.SC_1_LOCATION AS AP_RELEASE_SC1, "
|
||||||
|
+ "AP_APP_RELEASE.SC_2_LOCATION AS AP_RELEASE_SC2, "
|
||||||
|
+ "AP_APP_RELEASE.SC_3_LOCATION AS AP_RELEASE_SC3, "
|
||||||
|
+ "AP_APP_RELEASE.APP_PRICE AS RELEASE_PRICE, "
|
||||||
|
+ "AP_APP_RELEASE.APP_META_INFO AS RELEASE.META_INFO, "
|
||||||
|
+ "AP_APP_RELEASE.SUPPORTED_OS_VERSIONS AS RELEASE_SUP_OS_VERSIONS, "
|
||||||
|
+ "AP_APP_RELEASE.RATING AS RELEASE_RATING, "
|
||||||
|
+ "AP_APP_RELEASE.CURRENT_STATE AS RELEASE_CURRENT_STATE, "
|
||||||
|
+ "AP_APP_RELEASE.RATED_USERS AS RATED_USER_COUNT "
|
||||||
|
+ "FROM AP_APP "
|
||||||
|
+ "INNER JOIN AP_APP_RELEASE ON "
|
||||||
|
+ "APP_APP.ID = APP_APP_RELEASE.AP_APP_ID AND "
|
||||||
|
+ "AP_APP.TENANT_ID = ? AND "
|
||||||
|
+ "AP_APP.TENANT_ID = APP_APP_RELEASE.TENANT_ID";
|
||||||
|
|
||||||
if (filter == null) {
|
if (filter == null) {
|
||||||
throw new ApplicationManagementDAOException("Filter need to be instantiated");
|
throw new ApplicationManagementDAOException("Filter need to be instantiated");
|
||||||
@ -218,11 +345,11 @@ public class GenericApplicationDAOImpl extends AbstractDAOImpl implements Applic
|
|||||||
|
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
throw new ApplicationManagementDAOException("Error occurred while getting application list for the tenant"
|
throw new ApplicationManagementDAOException("Error occurred while getting application list for the tenant"
|
||||||
+ " " + tenantId + ". While executing " + sql, e);
|
+ " " + tenantId + ". While executing " + sql, e);
|
||||||
} catch (DBConnectionException e) {
|
} catch (DBConnectionException e) {
|
||||||
throw new ApplicationManagementDAOException("Error occurred while obtaining the DB connection while "
|
throw new ApplicationManagementDAOException("Error occurred while obtaining the DB connection while "
|
||||||
+ "getting application list for the tenant " + tenantId,
|
+ "getting application list for the tenant " + tenantId,
|
||||||
e);
|
e);
|
||||||
} catch (JSONException e) {
|
} catch (JSONException e) {
|
||||||
throw new ApplicationManagementDAOException("Error occurred while parsing JSON ", e);
|
throw new ApplicationManagementDAOException("Error occurred while parsing JSON ", e);
|
||||||
} finally {
|
} finally {
|
||||||
|
|||||||
@ -232,6 +232,7 @@ public class ApplicationManagerImpl implements ApplicationManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
ConnectionManagerUtil.openDBConnection();
|
ConnectionManagerUtil.openDBConnection();
|
||||||
|
// todo modify this logic, join app n release tables
|
||||||
applicationList = applicationDAO.getApplications(filter, tenantId);
|
applicationList = applicationDAO.getApplications(filter, tenantId);
|
||||||
apps = applicationList.getApplications();
|
apps = applicationList.getApplications();
|
||||||
for ( Application app : apps){
|
for ( Application app : apps){
|
||||||
|
|||||||
@ -21,8 +21,10 @@ package org.wso2.carbon.device.application.mgt.core.util;
|
|||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.Filter;
|
||||||
import org.wso2.carbon.device.application.mgt.common.services.*;
|
import org.wso2.carbon.device.application.mgt.common.services.*;
|
||||||
import org.wso2.carbon.device.application.mgt.common.ErrorResponse;
|
import org.wso2.carbon.device.application.mgt.common.ErrorResponse;
|
||||||
|
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
|
||||||
|
|
||||||
import javax.ws.rs.core.Response;
|
import javax.ws.rs.core.Response;
|
||||||
|
|
||||||
@ -163,4 +165,31 @@ public class APIUtil {
|
|||||||
return configManager;
|
return configManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Filter constructFilter(String deviceType, String appName, String appType, String appCategory,
|
||||||
|
boolean isFullMatch, String releaseState, int offset, int limit, String sortBy) {
|
||||||
|
Filter filter = new Filter();
|
||||||
|
filter.setOffset(offset);
|
||||||
|
filter.setLimit(limit);
|
||||||
|
filter.setSortBy(sortBy);
|
||||||
|
filter.setFullMatch(isFullMatch);
|
||||||
|
if (appName != null && !appName.isEmpty()) {
|
||||||
|
filter.setAppName(appName);
|
||||||
|
}
|
||||||
|
if (appType != null && !appType.isEmpty()) {
|
||||||
|
filter.setAppType(appType);
|
||||||
|
}
|
||||||
|
if (appCategory != null && !appCategory.isEmpty()) {
|
||||||
|
filter.setAppCategory(appCategory);
|
||||||
|
}
|
||||||
|
if (releaseState != null && !releaseState.isEmpty()) {
|
||||||
|
filter.setCurrentAppReleaseState(releaseState);
|
||||||
|
}
|
||||||
|
if (deviceType != null && !deviceType.isEmpty()) {
|
||||||
|
DeviceType dt = new DeviceType();
|
||||||
|
dt.setName(deviceType);
|
||||||
|
filter.setDeviceType(dt);
|
||||||
|
}
|
||||||
|
return filter;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,7 +35,6 @@ import org.wso2.carbon.device.application.mgt.common.exception.ResourceManagemen
|
|||||||
import org.wso2.carbon.device.application.mgt.common.services.ApplicationManager;
|
import org.wso2.carbon.device.application.mgt.common.services.ApplicationManager;
|
||||||
import org.wso2.carbon.device.application.mgt.common.services.ApplicationStorageManager;
|
import org.wso2.carbon.device.application.mgt.common.services.ApplicationStorageManager;
|
||||||
import org.wso2.carbon.device.application.mgt.core.exception.NotFoundException;
|
import org.wso2.carbon.device.application.mgt.core.exception.NotFoundException;
|
||||||
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
@ -81,32 +80,13 @@ public class ApplicationManagementAPIImpl implements ApplicationManagementAPI {
|
|||||||
ApplicationManager applicationManager = APIUtil.getApplicationManager();
|
ApplicationManager applicationManager = APIUtil.getApplicationManager();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Filter filter = new Filter();
|
Filter filter = APIUtil
|
||||||
filter.setOffset(offset);
|
.constructFilter(deviceType, appName, appType, appCategory, isFullMatch, releaseState, offset,
|
||||||
filter.setLimit(limit);
|
limit, sortBy);
|
||||||
filter.setSortBy(sortBy);
|
|
||||||
filter.setFullMatch(isFullMatch);
|
|
||||||
if (appName != null && !appName.isEmpty()) {
|
|
||||||
filter.setAppName(appName);
|
|
||||||
}
|
|
||||||
if (appType != null && !appType.isEmpty()) {
|
|
||||||
filter.setAppType(appType);
|
|
||||||
}
|
|
||||||
if (appCategory != null && !appCategory.isEmpty()) {
|
|
||||||
filter.setAppCategory(appCategory);
|
|
||||||
}
|
|
||||||
if (releaseState != null && !releaseState.isEmpty()) {
|
|
||||||
filter.setCurrentAppReleaseState(releaseState);
|
|
||||||
}
|
|
||||||
if (deviceType != null && !deviceType.isEmpty()) {
|
|
||||||
DeviceType dt = new DeviceType();
|
|
||||||
dt.setName(deviceType);
|
|
||||||
filter.setDeviceType(dt);
|
|
||||||
}
|
|
||||||
ApplicationList applications = applicationManager.getApplications(filter);
|
ApplicationList applications = applicationManager.getApplications(filter);
|
||||||
if (applications.getApplications().isEmpty()) {
|
if (applications.getApplications().isEmpty()) {
|
||||||
return Response.status(Response.Status.NOT_FOUND)
|
return Response.status(Response.Status.NOT_FOUND)
|
||||||
.entity("Couldn't find any application for requested query.").build();
|
.entity("Couldn't find any application for the requested query.").build();
|
||||||
}
|
}
|
||||||
return Response.status(Response.Status.OK).entity(applications).build();
|
return Response.status(Response.Status.OK).entity(applications).build();
|
||||||
} catch(BadRequestException e){
|
} catch(BadRequestException e){
|
||||||
@ -169,8 +149,8 @@ public class ApplicationManagementAPIImpl implements ApplicationManagementAPI {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
if (isInvalidReleaseCreatingRequest(binaryFile, iconFile, bannerFile, attachmentList, application.getType())) {
|
if (isInvalidReleaseCreatingRequest(binaryFile, iconFile, bannerFile, attachmentList, application.getType())) {
|
||||||
// todo add msg
|
return Response.status(Response.Status.BAD_REQUEST)
|
||||||
return Response.status(Response.Status.BAD_REQUEST).build();
|
.entity("Invalid request for creating an application.").build();
|
||||||
}
|
}
|
||||||
|
|
||||||
// The application executable artifacts such as apks are uploaded.
|
// The application executable artifacts such as apks are uploaded.
|
||||||
@ -673,4 +653,5 @@ public class ApplicationManagementAPIImpl implements ApplicationManagementAPI {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,208 +1,355 @@
|
|||||||
|
CREATE SCHEMA IF NOT EXISTS APP_MANAGER
|
||||||
|
SET CATALOG APP_MANAGER
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_APP
|
-- Table AP_APP
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_APP (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
NAME VARCHAR(45) NOT NULL,
|
NAME varchar(45) NOT NULL,
|
||||||
TYPE VARCHAR(200) NOT NULL,
|
DESCRIPTION clob NULL,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TYPE varchar(200) NOT NULL,
|
||||||
APP_CATEGORY VARCHAR(45) NULL DEFAULT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
RESTRICTED INT(11) NOT NULL,
|
STATUS varchar(45) NOT NULL DEFAULT 'ACTIVE',
|
||||||
STATUS VARCHAR(45) NOT NULL DEFAULT 'ACTIVE',
|
SUB_TYPE varchar(45) NOT NULL,
|
||||||
SUB_TYPE VARCHAR(45) NOT NULL,
|
CURRENCY varchar(45) NULL DEFAULT '$',
|
||||||
CURRENCY VARCHAR(45) NULL DEFAULT '$',
|
RATING int NULL,
|
||||||
DEVICE_TYPE_ID INT(11) NOT NULL,
|
DEVICE_TYPE_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID));
|
PRIMARY KEY (ID),
|
||||||
|
CONSTRAINT fk_AP_APP_DM_DEVICE_TYPE1
|
||||||
|
FOREIGN KEY (DEVICE_TYPE_ID)
|
||||||
|
REFERENCES APP_MANAGER.DM_DEVICE_TYPE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_DM_DEVICE_TYPE1_idx (DEVICE_TYPE_ID ASC)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_APP_RELEASE
|
-- Table AP_APP_RELEASE
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_APP_RELEASE (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_RELEASE(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
VERSION VARCHAR(25) NOT NULL,
|
DESCRIPTION clob NOT NULL,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
VERSION varchar(10) NOT NULL,
|
||||||
UUID VARCHAR(200) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
RELEASE_TYPE VARCHAR(45) NOT NULL,
|
UUID varchar(200) NOT NULL,
|
||||||
PACKAGE_NAME VARCHAR(45) NOT NULL,
|
RELEASE_TYPE varchar(45) NOT NULL,
|
||||||
APP_PRICE DECIMAL(6,2) NULL DEFAULT NULL,
|
APP_PRICE decimal(6, 2) NULL DEFAULT NULL,
|
||||||
STORED_LOCATION VARCHAR(100) NOT NULL,
|
STORED_LOCATION varchar(45) NOT NULL,
|
||||||
BANNER_LOCATION VARCHAR(100) NOT NULL,
|
BANNER_LOCATION varchar(45) NOT NULL,
|
||||||
ICON_LOCATION VARCHAR(100) NOT NULL,
|
SC_1_LOCATION varchar(45) NOT NULL,
|
||||||
SC_1_LOCATION VARCHAR(100) NOT NULL,
|
SC_2_LOCATION varchar(45) NULL DEFAULT NULL,
|
||||||
SC_2_LOCATION VARCHAR(100) NULL DEFAULT NULL,
|
SC_3_LOCATION varchar(45) NULL DEFAULT NULL,
|
||||||
SC_3_LOCATION VARCHAR(100) NULL DEFAULT NULL,
|
APP_HASH_VALUE varchar(1000) NOT NULL,
|
||||||
APP_HASH_VALUE VARCHAR(100) NOT NULL,
|
SHARED_WITH_ALL_TENANTS tinyint NULL DEFAULT NULL,
|
||||||
SHARED_WITH_ALL_TENANTS INT(11) NULL DEFAULT NULL,
|
APP_META_INFO clob NULL DEFAULT NULL,
|
||||||
APP_META_INFO VARCHAR(20000) NULL DEFAULT NULL,
|
PACKAGE_NAME varchar(45) NOT NULL,
|
||||||
RATING DOUBLE NULL DEFAULT NULL,
|
SUPPORTED_OS_VERSIONS varchar(45) NULL,
|
||||||
RATED_USERS INT(11) NULL,
|
RATING double NULL DEFAULT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
CURRENT_STATE varchar(45) NULL,
|
||||||
PRIMARY KEY (ID, AP_APP_ID),
|
RATED_USERS int NULL,
|
||||||
|
AP_APP_ID int NOT NULL,
|
||||||
|
PRIMARY KEY (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
),
|
||||||
CONSTRAINT fk_AP_APP_RELEASE_AP_APP1
|
CONSTRAINT fk_AP_APP_RELEASE_AP_APP1
|
||||||
FOREIGN KEY (AP_APP_ID)
|
FOREIGN KEY (AP_APP_ID)
|
||||||
REFERENCES AP_APP (ID));
|
REFERENCES APP_MANAGER.AP_APP (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_RELEASE_AP_APP1_idx (AP_APP_ID ASC)
|
||||||
CREATE INDEX fk_AP_APP_RELEASE_AP_APP1_idx ON AP_APP_RELEASE (AP_APP_ID ASC);
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_APP_REVIEW
|
-- Table AP_APP_REVIEW
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_APP_REVIEW (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_REVIEW(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
COMMENT VARCHAR(250) NOT NULL,
|
COMMENT varchar(250) NOT NULL,
|
||||||
PARENT_ID INT(11) NULL,
|
REPLY_COMMENT varchar(250) NULL,
|
||||||
CREATED_AT TIMESTAMP NOT NULL,
|
CREATED_AT timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
MODIFIED_AT TIMESTAMP NOT NULL,
|
MODIFIED_AT timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
RATING INT(11) NULL,
|
RATING int NULL,
|
||||||
USERNAME VARCHAR(45) NOT NULL,
|
USERNAME varchar(45) NOT NULL,
|
||||||
AP_APP_RELEASE_ID INT(11) NOT NULL,
|
AP_APP_RELEASE_ID int NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID),
|
PRIMARY KEY (ID),
|
||||||
CONSTRAINT fk_AP_APP_COMMENT_AP_APP_RELEASE1
|
CONSTRAINT fk_AP_APP_COMMENT_AP_APP_RELEASE1
|
||||||
FOREIGN KEY (AP_APP_RELEASE_ID , AP_APP_ID)
|
FOREIGN KEY (
|
||||||
REFERENCES AP_APP_RELEASE (ID , AP_APP_ID));
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
CREATE INDEX fk_AP_APP_COMMENT_AP_APP_RELEASE1_idx ON AP_APP_REVIEW (AP_APP_RELEASE_ID ASC, AP_APP_ID ASC);
|
)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_RELEASE (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_COMMENT_AP_APP_RELEASE1_idx (
|
||||||
|
AP_APP_RELEASE_ID ASC,
|
||||||
|
AP_APP_ID ASC
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_APP_LIFECYCLE_STATE
|
-- Table AP_APP_LIFECYCLE_STATE
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_APP_LIFECYCLE_STATE (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_LIFECYCLE_STATE(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
CURRENT_STATE VARCHAR(45) NOT NULL,
|
CURRENT_STATE varchar(45) NOT NULL,
|
||||||
PREVIOUS_STATE VARCHAR(45) NOT NULL,
|
PREVIOUSE_STATE varchar(45) NOT NULL,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
UPDATED_BY VARCHAR(100) NOT NULL,
|
UPDATED_BY varchar(100) NOT NULL,
|
||||||
UPDATED_AT TIMESTAMP NOT NULL,
|
UPDATED_AT timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
AP_APP_RELEASE_ID INT(11) NOT NULL,
|
AP_APP_RELEASE_ID int NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID, AP_APP_RELEASE_ID, AP_APP_ID),
|
PRIMARY KEY (
|
||||||
|
ID,
|
||||||
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
|
),
|
||||||
CONSTRAINT fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1
|
CONSTRAINT fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1
|
||||||
FOREIGN KEY (AP_APP_RELEASE_ID , AP_APP_ID)
|
FOREIGN KEY (
|
||||||
REFERENCES AP_APP_RELEASE (ID , AP_APP_ID));
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
CREATE INDEX fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1_idx ON AP_APP_LIFECYCLE_STATE (AP_APP_RELEASE_ID ASC, AP_APP_ID ASC);
|
)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_RELEASE (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1_idx (
|
||||||
|
AP_APP_RELEASE_ID ASC,
|
||||||
|
AP_APP_ID ASC
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_APP_TAG
|
-- Table AP_APP_TAG
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_APP_TAG (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_TAG(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
TAG VARCHAR(45) NOT NULL,
|
TAG varchar(45) NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
PRIMARY KEY (ID)
|
||||||
PRIMARY KEY (ID),
|
)
|
||||||
CONSTRAINT fk_AP_APP_TAGS_AP_APP1
|
ENGINE InnoDB
|
||||||
FOREIGN KEY (AP_APP_ID)
|
DEFAULT CHARACTER SET utf8
|
||||||
REFERENCES AP_APP (ID));
|
|
||||||
|
|
||||||
CREATE INDEX fk_AP_APP_TAGS_AP_APP1_idx ON AP_APP_TAG (AP_APP_ID ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_DEVICE_SUBSCRIPTION
|
-- Table AP_DEVICE_SUBSCRIPTION
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_DEVICE_SUBSCRIPTION (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_DEVICE_SUBSCRIPTION(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
SUBSCRIBED_BY VARCHAR(100) NOT NULL,
|
SUBSCRIBED_BY varchar(100) NOT NULL,
|
||||||
SUBSCRIBED_TIMESTAMP TIMESTAMP NOT NULL,
|
SUBSCRIBED_TIMESTAMP timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
UNSUBSCRIBED INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_BY INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED_BY int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_TIMESTAMP TIMESTAMP NULL DEFAULT NULL,
|
UNSUBSCRIBED_TIMESTAMP timestamp NULL DEFAULT NULL,
|
||||||
DM_ENROLMENT_ID INT(11) NOT NULL,
|
SUBSCRIBED_FROM varchar(45) NULL,
|
||||||
AP_APP_RELEASE_ID INT(11) NOT NULL,
|
DM_DEVICE_ID int NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_RELEASE_ID int NOT NULL,
|
||||||
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID),
|
PRIMARY KEY (ID),
|
||||||
|
CONSTRAINT fk_AM_DEVICE_SUBSCRIPTION_DM_DEVICE1
|
||||||
|
FOREIGN KEY (DM_DEVICE_ID)
|
||||||
|
REFERENCES APP_MANAGER.DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
CONSTRAINT fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1
|
CONSTRAINT fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1
|
||||||
FOREIGN KEY (AP_APP_ID , AP_APP_RELEASE_ID)
|
FOREIGN KEY (
|
||||||
REFERENCES AP_APP_RELEASE (AP_APP_ID , ID));
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
CREATE INDEX fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1_idx ON AP_DEVICE_SUBSCRIPTION (AP_APP_ID ASC, AP_APP_RELEASE_ID ASC);
|
)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_RELEASE (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AM_DEVICE_SUBSCRIPTION_DM_DEVICE1_idx (DM_DEVICE_ID ASC),
|
||||||
|
INDEX fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1_idx (
|
||||||
|
AP_APP_RELEASE_ID ASC,
|
||||||
|
AP_APP_ID ASC
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_GROUP_SUBSCRIPTION
|
-- Table AP_GROUP_SUBSCRIPTION
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_GROUP_SUBSCRIPTION (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_GROUP_SUBSCRIPTION(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
SUBSCRIBED_BY VARCHAR(100) NOT NULL,
|
SUBSCRIBED_BY varchar(100) NOT NULL,
|
||||||
SUBSCRIBED_TIMESTAMP TIMESTAMP NOT NULL,
|
SUBSCRIBED_TIMESTAMP timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
UNSUBSCRIBED INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_BY INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED_BY int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_TIMESTAMP TIMESTAMP NULL DEFAULT NULL,
|
UNSUBSCRIBED_TIMESTAMP timestamp NULL DEFAULT NULL,
|
||||||
DM_GROUP_ID INT(11) NOT NULL,
|
DM_GROUP_ID int NOT NULL,
|
||||||
AP_APP_RELEASE_ID INT(11) NOT NULL,
|
AP_APP_RELEASE_ID int NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID),
|
PRIMARY KEY (ID),
|
||||||
|
CONSTRAINT fk_AM_GROUP_SUBSCRIPTION_DM_GROUP1
|
||||||
|
FOREIGN KEY (DM_GROUP_ID)
|
||||||
|
REFERENCES APP_MANAGER.DM_GROUP (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
CONSTRAINT fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1
|
CONSTRAINT fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1
|
||||||
FOREIGN KEY (AP_APP_RELEASE_ID , AP_APP_ID)
|
FOREIGN KEY (
|
||||||
REFERENCES AP_APP_RELEASE (ID , AP_APP_ID));
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
CREATE INDEX fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1_idx ON AP_GROUP_SUBSCRIPTION (AP_APP_RELEASE_ID ASC, AP_APP_ID ASC);
|
)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_RELEASE (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AM_GROUP_SUBSCRIPTION_DM_GROUP1_idx (DM_GROUP_ID ASC),
|
||||||
|
INDEX fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1_idx (
|
||||||
|
AP_APP_RELEASE_ID ASC,
|
||||||
|
AP_APP_ID ASC
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_ROLE_SUBSCRIPTION
|
-- Table AP_ROLE_SUBSCRIPTION
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_ROLE_SUBSCRIPTION (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_ROLE_SUBSCRIPTION(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
ROLE_NAME VARCHAR(100) NOT NULL,
|
ROLE_NAME varchar(100) NOT NULL,
|
||||||
SUBSCRIBED_BY VARCHAR(100) NOT NULL,
|
SUBSCRIBED_BY varchar(100) NOT NULL,
|
||||||
SUBSCRIBED_TIMESTAMP TIMESTAMP NOT NULL,
|
SUBSCRIBED_TIMESTAMP timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
UNSUBSCRIBED INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_BY INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED_BY int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_TIMESTAMP TIMESTAMP NULL DEFAULT NULL,
|
UNSUBSCRIBED_TIMESTAMP timestamp NULL DEFAULT NULL,
|
||||||
AP_APP_RELEASE_ID INT(11) NOT NULL,
|
AP_APP_RELEASE_ID int NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID),
|
PRIMARY KEY (ID),
|
||||||
CONSTRAINT fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1
|
CONSTRAINT fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1
|
||||||
FOREIGN KEY (AP_APP_RELEASE_ID , AP_APP_ID)
|
FOREIGN KEY (
|
||||||
REFERENCES AP_APP_RELEASE (ID , AP_APP_ID));
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
CREATE INDEX fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1_idx ON AP_ROLE_SUBSCRIPTION (AP_APP_RELEASE_ID ASC, AP_APP_ID ASC);
|
)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_RELEASE (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1_idx (
|
||||||
|
AP_APP_RELEASE_ID ASC,
|
||||||
|
AP_APP_ID ASC
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_UNRESTRICTED_ROLE
|
-- Table AP_UNRESTRICTED_ROLE
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_UNRESTRICTED_ROLE (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_UNRESTRICTED_ROLE(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
ROLE VARCHAR(45) NOT NULL,
|
ROLE varchar(45) NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID),
|
PRIMARY KEY (ID),
|
||||||
CONSTRAINT fk_AP_APP_VISIBILITY_AP_APP1
|
CONSTRAINT fk_AP_APP_VISIBILITY_AP_APP1
|
||||||
FOREIGN KEY (AP_APP_ID)
|
FOREIGN KEY (AP_APP_ID)
|
||||||
REFERENCES AP_APP (ID));
|
REFERENCES APP_MANAGER.AP_APP (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_VISIBILITY_AP_APP1_idx (AP_APP_ID ASC)
|
||||||
CREATE INDEX fk_AP_APP_VISIBILITY_AP_APP1_idx ON AP_UNRESTRICTED_ROLE (AP_APP_ID ASC);
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table AP_USER_SUBSCRIPTION
|
-- Table AP_USER_SUBSCRIPTION
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS AP_USER_SUBSCRIPTION (
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_USER_SUBSCRIPTION(
|
||||||
ID INT(11) NOT NULL AUTO_INCREMENT,
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
TENANT_ID VARCHAR(45) NOT NULL,
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
USER_NAME VARCHAR(100) NOT NULL,
|
USER_NAME varchar(100) NOT NULL,
|
||||||
SUBSCRIBED_BY VARCHAR(100) NOT NULL,
|
SUBSCRIBED_BY varchar(100) NOT NULL,
|
||||||
SUBSCRIBED_TIMESTAMP TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
SUBSCRIBED_TIMESTAMP timestamp NOT NULL DEFAULT current_timestamp(),
|
||||||
UNSUBSCRIBED INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_BY INT(11) NULL DEFAULT NULL,
|
UNSUBSCRIBED_BY int NULL DEFAULT NULL,
|
||||||
UNSUBSCRIBED_TIMESTAMP TIMESTAMP NULL DEFAULT NULL,
|
UNSUBSCRIBED_TIMESTAMP timestamp NULL DEFAULT NULL,
|
||||||
AP_APP_RELEASE_ID INT(11) NOT NULL,
|
AP_APP_RELEASE_ID int NOT NULL,
|
||||||
AP_APP_ID INT(11) NOT NULL,
|
AP_APP_ID int NOT NULL,
|
||||||
PRIMARY KEY (ID),
|
PRIMARY KEY (ID),
|
||||||
CONSTRAINT fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1
|
CONSTRAINT fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1
|
||||||
FOREIGN KEY (AP_APP_RELEASE_ID , AP_APP_ID)
|
FOREIGN KEY (
|
||||||
REFERENCES AP_APP_RELEASE (ID , AP_APP_ID));
|
AP_APP_RELEASE_ID,
|
||||||
|
AP_APP_ID
|
||||||
|
)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_RELEASE (
|
||||||
|
ID,
|
||||||
|
AP_APP_ID
|
||||||
|
) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1_idx (
|
||||||
|
AP_APP_RELEASE_ID ASC,
|
||||||
|
AP_APP_ID ASC
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
CREATE INDEX fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1_idx ON AP_USER_SUBSCRIPTION (AP_APP_RELEASE_ID ASC, AP_APP_ID ASC);
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table AP_APP_CATEGORY
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_CATEGORY(
|
||||||
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
|
TENANT_ID varchar(45) NOT NULL,
|
||||||
|
CATEGORY varchar(45) NOT NULL,
|
||||||
|
CATEGORY_ICON varchar(45) NULL,
|
||||||
|
PRIMARY KEY (ID)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table AP_APP_TAG_MAPPING
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_TAG_MAPPING(
|
||||||
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
|
AP_APP_TAG_ID int NOT NULL,
|
||||||
|
AP_APP_ID int NOT NULL,
|
||||||
|
PRIMARY KEY (ID),
|
||||||
|
CONSTRAINT fk_AP_APP_TAG_copy1_AP_APP_TAG1
|
||||||
|
FOREIGN KEY (AP_APP_TAG_ID)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_TAG (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
CONSTRAINT fk_AP_APP_TAG_copy1_AP_APP1
|
||||||
|
FOREIGN KEY (AP_APP_ID)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_TAG_copy1_AP_APP_TAG1_idx (AP_APP_TAG_ID ASC),
|
||||||
|
INDEX fk_AP_APP_TAG_copy1_AP_APP1_idx (AP_APP_ID ASC)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table AP_APP_CATEGORY_MAPPING
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS APP_MANAGER.AP_APP_CATEGORY_MAPPING(
|
||||||
|
ID int NOT NULL AUTO_INCREMENT,
|
||||||
|
AP_APP_CATEGORY_ID int NOT NULL,
|
||||||
|
AP_APP_ID int NOT NULL,
|
||||||
|
PRIMARY KEY (ID),
|
||||||
|
CONSTRAINT fk_AP_APP_CATEGORY_copy1_AP_APP_CATEGORY1
|
||||||
|
FOREIGN KEY (AP_APP_CATEGORY_ID)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP_CATEGORY (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
CONSTRAINT fk_AP_APP_CATEGORY_copy1_AP_APP1
|
||||||
|
FOREIGN KEY (AP_APP_ID)
|
||||||
|
REFERENCES APP_MANAGER.AP_APP (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||||
|
INDEX fk_AP_APP_CATEGORY_copy1_AP_APP_CATEGORY1_idx (AP_APP_CATEGORY_ID ASC),
|
||||||
|
INDEX fk_AP_APP_CATEGORY_copy1_AP_APP1_idx (AP_APP_ID ASC)
|
||||||
|
)
|
||||||
|
ENGINE InnoDB
|
||||||
|
DEFAULT CHARACTER SET utf8
|
||||||
|
|||||||
@ -1,76 +1,89 @@
|
|||||||
-- MySQL Script generated by MySQL Workbench
|
|
||||||
-- Tue 18 Sep 2018 17:40:45 +0530
|
|
||||||
-- Model: New Model Version: 1.0
|
|
||||||
-- MySQL Workbench Forward Engineering
|
-- MySQL Workbench Forward Engineering
|
||||||
|
|
||||||
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
|
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
|
||||||
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
|
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
|
||||||
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
|
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Schema APP_MANAGER
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_APP`
|
-- Schema APP_MANAGER
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_APP` (
|
CREATE SCHEMA IF NOT EXISTS `APP_MANAGER` DEFAULT CHARACTER SET utf8 ;
|
||||||
|
USE `APP_MANAGER` ;
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table `APP_MANAGER`.`AP_APP`
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`NAME` VARCHAR(45) NOT NULL,
|
`NAME` VARCHAR(45) NOT NULL,
|
||||||
|
`DESCRIPTION` TEXT NULL,
|
||||||
`TYPE` VARCHAR(200) NOT NULL,
|
`TYPE` VARCHAR(200) NOT NULL,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`APP_CATEGORY` VARCHAR(45) NULL DEFAULT NULL,
|
|
||||||
`RESTRICTED` INT(11) NOT NULL,
|
|
||||||
`STATUS` VARCHAR(45) NOT NULL DEFAULT 'ACTIVE',
|
`STATUS` VARCHAR(45) NOT NULL DEFAULT 'ACTIVE',
|
||||||
`SUB_TYPE` VARCHAR(45) NOT NULL,
|
`SUB_TYPE` VARCHAR(45) NOT NULL,
|
||||||
`CURRENCY` VARCHAR(45) NULL DEFAULT '$',
|
`CURRENCY` VARCHAR(45) NULL DEFAULT '$',
|
||||||
|
`RATING` INT(11) NULL,
|
||||||
`DEVICE_TYPE_ID` INT(11) NOT NULL,
|
`DEVICE_TYPE_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`))
|
PRIMARY KEY (`ID`),
|
||||||
ENGINE = InnoDB
|
INDEX `fk_AP_APP_DM_DEVICE_TYPE1_idx` (`DEVICE_TYPE_ID` ASC),
|
||||||
DEFAULT CHARACTER SET = utf8;
|
CONSTRAINT `fk_AP_APP_DM_DEVICE_TYPE1`
|
||||||
|
FOREIGN KEY (`DEVICE_TYPE_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`DM_DEVICE_TYPE` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION)
|
||||||
|
ENGINE = InnoDB
|
||||||
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_APP_RELEASE`
|
-- Table `APP_MANAGER`.`AP_APP_RELEASE`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_APP_RELEASE` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_RELEASE` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`VERSION` VARCHAR(25) NOT NULL,
|
`DESCRIPTION` TEXT NOT NULL,
|
||||||
|
`VERSION` VARCHAR(10) NOT NULL,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`UUID` VARCHAR(200) NOT NULL,
|
`UUID` VARCHAR(200) NOT NULL,
|
||||||
`RELEASE_TYPE` VARCHAR(45) NOT NULL,
|
`RELEASE_TYPE` VARCHAR(45) NOT NULL,
|
||||||
`PACKAGE_NAME` VARCHAR(45) NOT NULL,
|
|
||||||
`APP_PRICE` DECIMAL(6,2) NULL DEFAULT NULL,
|
`APP_PRICE` DECIMAL(6,2) NULL DEFAULT NULL,
|
||||||
`STORED_LOCATION` VARCHAR(100) NOT NULL,
|
`STORED_LOCATION` VARCHAR(45) NOT NULL,
|
||||||
`BANNER_LOCATION` VARCHAR(100) NOT NULL,
|
`BANNER_LOCATION` VARCHAR(45) NOT NULL,
|
||||||
`ICON_LOCATION` VARCHAR(100) NOT NULL,
|
`SC_1_LOCATION` VARCHAR(45) NOT NULL,
|
||||||
`SC_1_LOCATION` VARCHAR(100) NOT NULL,
|
`SC_2_LOCATION` VARCHAR(45) NULL DEFAULT NULL,
|
||||||
`SC_2_LOCATION` VARCHAR(100) NULL DEFAULT NULL,
|
`SC_3_LOCATION` VARCHAR(45) NULL DEFAULT NULL,
|
||||||
`SC_3_LOCATION` VARCHAR(100) NULL DEFAULT NULL,
|
`APP_HASH_VALUE` VARCHAR(1000) NOT NULL,
|
||||||
`APP_HASH_VALUE` VARCHAR(100) NOT NULL,
|
`SHARED_WITH_ALL_TENANTS` TINYINT(1) NULL DEFAULT NULL,
|
||||||
`SHARED_WITH_ALL_TENANTS` INT(11) NULL DEFAULT NULL,
|
`APP_META_INFO` TEXT NULL DEFAULT NULL,
|
||||||
`APP_META_INFO` VARCHAR(20000) NULL DEFAULT NULL,
|
`PACKAGE_NAME` VARCHAR(45) NOT NULL,
|
||||||
|
`SUPPORTED_OS_VERSIONS` VARCHAR(45) NULL,
|
||||||
`RATING` DOUBLE NULL DEFAULT NULL,
|
`RATING` DOUBLE NULL DEFAULT NULL,
|
||||||
|
`CURRENT_STATE` VARCHAR(45) NULL,
|
||||||
`RATED_USERS` INT(11) NULL,
|
`RATED_USERS` INT(11) NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`, `AP_APP_ID`),
|
PRIMARY KEY (`ID`, `AP_APP_ID`),
|
||||||
|
INDEX `fk_AP_APP_RELEASE_AP_APP1_idx` (`AP_APP_ID` ASC),
|
||||||
CONSTRAINT `fk_AP_APP_RELEASE_AP_APP1`
|
CONSTRAINT `fk_AP_APP_RELEASE_AP_APP1`
|
||||||
FOREIGN KEY (`AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_ID`)
|
||||||
REFERENCES `AP_APP` (`ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP` (`ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8
|
DEFAULT CHARACTER SET = utf8
|
||||||
COMMENT = ' ';
|
COMMENT = ' ';
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_APP_RELEASE_AP_APP1_idx` ON `AP_APP_RELEASE` (`AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_APP_REVIEW`
|
-- Table `APP_MANAGER`.`AP_APP_REVIEW`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_APP_REVIEW` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_REVIEW` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`COMMENT` VARCHAR(250) NOT NULL,
|
`COMMENT` VARCHAR(250) NOT NULL,
|
||||||
`PARENT_ID` INT(11) NULL,
|
`REPLY_COMMENT` VARCHAR(250) NULL,
|
||||||
`CREATED_AT` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
`CREATED_AT` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
`MODIFIED_AT` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
`MODIFIED_AT` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
`RATING` INT(11) NULL,
|
`RATING` INT(11) NULL,
|
||||||
@ -78,65 +91,55 @@ CREATE TABLE IF NOT EXISTS `AP_APP_REVIEW` (
|
|||||||
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`),
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AP_APP_COMMENT_AP_APP_RELEASE1_idx` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC),
|
||||||
CONSTRAINT `fk_AP_APP_COMMENT_AP_APP_RELEASE1`
|
CONSTRAINT `fk_AP_APP_COMMENT_AP_APP_RELEASE1`
|
||||||
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
||||||
REFERENCES `AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_APP_COMMENT_AP_APP_RELEASE1_idx` ON `AP_APP_REVIEW` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_APP_LIFECYCLE_STATE`
|
-- Table `APP_MANAGER`.`AP_APP_LIFECYCLE_STATE`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_APP_LIFECYCLE_STATE` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_LIFECYCLE_STATE` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`CURRENT_STATE` VARCHAR(45) NOT NULL,
|
`CURRENT_STATE` VARCHAR(45) NOT NULL,
|
||||||
`PREVIOUS_STATE` VARCHAR(45) NOT NULL,
|
`PREVIOUSE_STATE` VARCHAR(45) NOT NULL,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`UPDATED_BY` VARCHAR(100) NOT NULL,
|
`UPDATED_BY` VARCHAR(100) NOT NULL,
|
||||||
`UPDATED_AT` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
`UPDATED_AT` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`, `AP_APP_RELEASE_ID`, `AP_APP_ID`),
|
PRIMARY KEY (`ID`, `AP_APP_RELEASE_ID`, `AP_APP_ID`),
|
||||||
|
INDEX `fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1_idx` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC),
|
||||||
CONSTRAINT `fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1`
|
CONSTRAINT `fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1`
|
||||||
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
||||||
REFERENCES `AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_APP_LIFECYCLE_STATE_AP_APP_RELEASE1_idx` ON `AP_APP_LIFECYCLE_STATE` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_APP_TAG`
|
-- Table `APP_MANAGER`.`AP_APP_TAG`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_APP_TAG` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_TAG` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`TAG` VARCHAR(45) NOT NULL,
|
`TAG` VARCHAR(45) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
PRIMARY KEY (`ID`))
|
||||||
PRIMARY KEY (`ID`),
|
ENGINE = InnoDB
|
||||||
CONSTRAINT `fk_AP_APP_TAGS_AP_APP1`
|
DEFAULT CHARACTER SET = utf8;
|
||||||
FOREIGN KEY (`AP_APP_ID`)
|
|
||||||
REFERENCES `AP_APP` (`ID`)
|
|
||||||
ON DELETE NO ACTION
|
|
||||||
ON UPDATE NO ACTION)
|
|
||||||
ENGINE = InnoDB
|
|
||||||
DEFAULT CHARACTER SET = utf8;
|
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_APP_TAGS_AP_APP1_idx` ON `AP_APP_TAG` (`AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_DEVICE_SUBSCRIPTION`
|
-- Table `APP_MANAGER`.`AP_DEVICE_SUBSCRIPTION`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_DEVICE_SUBSCRIPTION` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_DEVICE_SUBSCRIPTION` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`SUBSCRIBED_BY` VARCHAR(100) NOT NULL,
|
`SUBSCRIBED_BY` VARCHAR(100) NOT NULL,
|
||||||
@ -144,25 +147,30 @@ CREATE TABLE IF NOT EXISTS `AP_DEVICE_SUBSCRIPTION` (
|
|||||||
`UNSUBSCRIBED` INT(11) NULL DEFAULT NULL,
|
`UNSUBSCRIBED` INT(11) NULL DEFAULT NULL,
|
||||||
`UNSUBSCRIBED_BY` INT(11) NULL DEFAULT NULL,
|
`UNSUBSCRIBED_BY` INT(11) NULL DEFAULT NULL,
|
||||||
`UNSUBSCRIBED_TIMESTAMP` TIMESTAMP NULL DEFAULT NULL,
|
`UNSUBSCRIBED_TIMESTAMP` TIMESTAMP NULL DEFAULT NULL,
|
||||||
`DM_ENROLMENT_ID` INT(11) NOT NULL,
|
`SUBSCRIBED_FROM` VARCHAR(45) NULL,
|
||||||
|
`DM_DEVICE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`),
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AM_DEVICE_SUBSCRIPTION_DM_DEVICE1_idx` (`DM_DEVICE_ID` ASC),
|
||||||
|
INDEX `fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1_idx` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC),
|
||||||
|
CONSTRAINT `fk_AM_DEVICE_SUBSCRIPTION_DM_DEVICE1`
|
||||||
|
FOREIGN KEY (`DM_DEVICE_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`DM_DEVICE` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION,
|
||||||
CONSTRAINT `fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1`
|
CONSTRAINT `fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1`
|
||||||
FOREIGN KEY (`AP_APP_ID` , `AP_APP_RELEASE_ID`)
|
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
||||||
REFERENCES `AP_APP_RELEASE` (`AP_APP_ID` , `ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_DEVICE_SUBSCRIPTION_AP_APP_RELEASE1_idx` ON `AP_DEVICE_SUBSCRIPTION` (`AP_APP_ID` ASC, `AP_APP_RELEASE_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_GROUP_SUBSCRIPTION`
|
-- Table `APP_MANAGER`.`AP_GROUP_SUBSCRIPTION`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_GROUP_SUBSCRIPTION` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_GROUP_SUBSCRIPTION` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`SUBSCRIBED_BY` VARCHAR(100) NOT NULL,
|
`SUBSCRIBED_BY` VARCHAR(100) NOT NULL,
|
||||||
@ -174,21 +182,26 @@ CREATE TABLE IF NOT EXISTS `AP_GROUP_SUBSCRIPTION` (
|
|||||||
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`),
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AM_GROUP_SUBSCRIPTION_DM_GROUP1_idx` (`DM_GROUP_ID` ASC),
|
||||||
|
INDEX `fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1_idx` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC),
|
||||||
|
CONSTRAINT `fk_AM_GROUP_SUBSCRIPTION_DM_GROUP1`
|
||||||
|
FOREIGN KEY (`DM_GROUP_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`DM_GROUP` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION,
|
||||||
CONSTRAINT `fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1`
|
CONSTRAINT `fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1`
|
||||||
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
||||||
REFERENCES `AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_GROUP_SUBSCRIPTION_AP_APP_RELEASE1_idx` ON `AP_GROUP_SUBSCRIPTION` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_ROLE_SUBSCRIPTION`
|
-- Table `APP_MANAGER`.`AP_ROLE_SUBSCRIPTION`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_ROLE_SUBSCRIPTION` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_ROLE_SUBSCRIPTION` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`ROLE_NAME` VARCHAR(100) NOT NULL,
|
`ROLE_NAME` VARCHAR(100) NOT NULL,
|
||||||
@ -200,41 +213,39 @@ CREATE TABLE IF NOT EXISTS `AP_ROLE_SUBSCRIPTION` (
|
|||||||
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`),
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1_idx` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC),
|
||||||
CONSTRAINT `fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1`
|
CONSTRAINT `fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1`
|
||||||
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
||||||
REFERENCES `AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_ROLE_SUBSCRIPTION_AP_APP_RELEASE1_idx` ON `AP_ROLE_SUBSCRIPTION` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_UNRESTRICTED_ROLE`
|
-- Table `APP_MANAGER`.`AP_UNRESTRICTED_ROLE`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_UNRESTRICTED_ROLE` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_UNRESTRICTED_ROLE` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`ROLE` VARCHAR(45) NOT NULL,
|
`ROLE` VARCHAR(45) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`),
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AP_APP_VISIBILITY_AP_APP1_idx` (`AP_APP_ID` ASC),
|
||||||
CONSTRAINT `fk_AP_APP_VISIBILITY_AP_APP1`
|
CONSTRAINT `fk_AP_APP_VISIBILITY_AP_APP1`
|
||||||
FOREIGN KEY (`AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_ID`)
|
||||||
REFERENCES `AP_APP` (`ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP` (`ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_APP_VISIBILITY_AP_APP1_idx` ON `AP_UNRESTRICTED_ROLE` (`AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
|
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
-- Table `AP_USER_SUBSCRIPTION`
|
-- Table `APP_MANAGER`.`AP_USER_SUBSCRIPTION`
|
||||||
-- -----------------------------------------------------
|
-- -----------------------------------------------------
|
||||||
CREATE TABLE IF NOT EXISTS `AP_USER_SUBSCRIPTION` (
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_USER_SUBSCRIPTION` (
|
||||||
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`TENANT_ID` VARCHAR(45) NOT NULL,
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
`USER_NAME` VARCHAR(100) NOT NULL,
|
`USER_NAME` VARCHAR(100) NOT NULL,
|
||||||
@ -246,15 +257,76 @@ CREATE TABLE IF NOT EXISTS `AP_USER_SUBSCRIPTION` (
|
|||||||
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
`AP_APP_RELEASE_ID` INT(11) NOT NULL,
|
||||||
`AP_APP_ID` INT(11) NOT NULL,
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`ID`),
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1_idx` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC),
|
||||||
CONSTRAINT `fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1`
|
CONSTRAINT `fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1`
|
||||||
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
FOREIGN KEY (`AP_APP_RELEASE_ID` , `AP_APP_ID`)
|
||||||
REFERENCES `AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
REFERENCES `APP_MANAGER`.`AP_APP_RELEASE` (`ID` , `AP_APP_ID`)
|
||||||
ON DELETE NO ACTION
|
ON DELETE NO ACTION
|
||||||
ON UPDATE NO ACTION)
|
ON UPDATE NO ACTION)
|
||||||
ENGINE = InnoDB
|
ENGINE = InnoDB
|
||||||
DEFAULT CHARACTER SET = utf8;
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table `APP_MANAGER`.`AP_APP_CATEGORY`
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_CATEGORY` (
|
||||||
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
|
`TENANT_ID` VARCHAR(45) NOT NULL,
|
||||||
|
`CATEGORY` VARCHAR(45) NOT NULL,
|
||||||
|
`CATEGORY_ICON` VARCHAR(45) NULL,
|
||||||
|
PRIMARY KEY (`ID`))
|
||||||
|
ENGINE = InnoDB
|
||||||
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table `APP_MANAGER`.`AP_APP_TAG_MAPPING`
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_TAG_MAPPING` (
|
||||||
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
|
`AP_APP_TAG_ID` INT(11) NOT NULL,
|
||||||
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AP_APP_TAG_copy1_AP_APP_TAG1_idx` (`AP_APP_TAG_ID` ASC),
|
||||||
|
INDEX `fk_AP_APP_TAG_copy1_AP_APP1_idx` (`AP_APP_ID` ASC),
|
||||||
|
CONSTRAINT `fk_AP_APP_TAG_copy1_AP_APP_TAG1`
|
||||||
|
FOREIGN KEY (`AP_APP_TAG_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`AP_APP_TAG` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION,
|
||||||
|
CONSTRAINT `fk_AP_APP_TAG_copy1_AP_APP1`
|
||||||
|
FOREIGN KEY (`AP_APP_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`AP_APP` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION)
|
||||||
|
ENGINE = InnoDB
|
||||||
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
|
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
-- Table `APP_MANAGER`.`AP_APP_CATEGORY_MAPPING`
|
||||||
|
-- -----------------------------------------------------
|
||||||
|
CREATE TABLE IF NOT EXISTS `APP_MANAGER`.`AP_APP_CATEGORY_MAPPING` (
|
||||||
|
`ID` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
|
`AP_APP_CATEGORY_ID` INT(11) NOT NULL,
|
||||||
|
`AP_APP_ID` INT(11) NOT NULL,
|
||||||
|
PRIMARY KEY (`ID`),
|
||||||
|
INDEX `fk_AP_APP_CATEGORY_copy1_AP_APP_CATEGORY1_idx` (`AP_APP_CATEGORY_ID` ASC),
|
||||||
|
INDEX `fk_AP_APP_CATEGORY_copy1_AP_APP1_idx` (`AP_APP_ID` ASC),
|
||||||
|
CONSTRAINT `fk_AP_APP_CATEGORY_copy1_AP_APP_CATEGORY1`
|
||||||
|
FOREIGN KEY (`AP_APP_CATEGORY_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`AP_APP_CATEGORY` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION,
|
||||||
|
CONSTRAINT `fk_AP_APP_CATEGORY_copy1_AP_APP1`
|
||||||
|
FOREIGN KEY (`AP_APP_ID`)
|
||||||
|
REFERENCES `APP_MANAGER`.`AP_APP` (`ID`)
|
||||||
|
ON DELETE NO ACTION
|
||||||
|
ON UPDATE NO ACTION)
|
||||||
|
ENGINE = InnoDB
|
||||||
|
DEFAULT CHARACTER SET = utf8;
|
||||||
|
|
||||||
CREATE INDEX `fk_AP_USER_SUBSCRIPTION_AP_APP_RELEASE1_idx` ON `AP_USER_SUBSCRIPTION` (`AP_APP_RELEASE_ID` ASC, `AP_APP_ID` ASC);
|
|
||||||
|
|
||||||
SET SQL_MODE=@OLD_SQL_MODE;
|
SET SQL_MODE=@OLD_SQL_MODE;
|
||||||
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
|
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user