|
@@ -679,20 +679,34 @@ public class ProjectUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public void releaseLicense(String userId, String modelType, int parallelism) {
|
|
public void releaseLicense(String userId, String modelType, int parallelism) {
|
|
- String key;
|
|
|
|
if (DictConstants.MODEL_TYPE_VTD.equals(modelType)) {
|
|
if (DictConstants.MODEL_TYPE_VTD.equals(modelType)) {
|
|
- key = "user:" + userId + ":using-license:vtd";
|
|
|
|
|
|
+ String key = "user:" + userId + ":using-license:vtd";
|
|
|
|
+ final String usingLicense = customRedisClient.get(key);
|
|
|
|
+ if (StringUtil.isEmpty(usingLicense)) {
|
|
|
|
+ customRedisClient.set(key, "0");
|
|
|
|
+ } else {
|
|
|
|
+ customRedisClient.decrement(key, parallelism);
|
|
|
|
+ }
|
|
} else if (DictConstants.MODEL_TYPE_CARSIM.equals(modelType)) {
|
|
} else if (DictConstants.MODEL_TYPE_CARSIM.equals(modelType)) {
|
|
- key = "user:" + userId + ":using-license:carsim";
|
|
|
|
|
|
+ String key1 = "user:" + userId + ":using-license:vtd";
|
|
|
|
+ final String usingLicense1 = customRedisClient.get(key1);
|
|
|
|
+ if (StringUtil.isEmpty(usingLicense1)) {
|
|
|
|
+ customRedisClient.set(key1, "0");
|
|
|
|
+ } else {
|
|
|
|
+ customRedisClient.decrement(key1, parallelism);
|
|
|
|
+ }
|
|
|
|
+ String key2 = "user:" + userId + ":using-license:carsim";
|
|
|
|
+ final String usingLicense2 = customRedisClient.get(key2);
|
|
|
|
+ if (StringUtil.isEmpty(usingLicense2)) {
|
|
|
|
+ customRedisClient.set(key2, "0");
|
|
|
|
+ } else {
|
|
|
|
+ customRedisClient.decrement(key2, parallelism);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
throw new RuntimeException("未知模型类型:" + modelType);
|
|
throw new RuntimeException("未知模型类型:" + modelType);
|
|
}
|
|
}
|
|
- final String usingLicense = customRedisClient.get(key);
|
|
|
|
- if (StringUtil.isEmpty(usingLicense)) {
|
|
|
|
- customRedisClient.set(key, "0");
|
|
|
|
- } else {
|
|
|
|
- customRedisClient.decrement(key, parallelism);
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|