|
|
@@ -188,6 +188,18 @@ function getWillCompositeTaskId() {
|
|
|
return val;
|
|
|
}
|
|
|
|
|
|
+function printMaterialGroupsInfo(materialGroups) {
|
|
|
+ lk.log(`排列组合组数:${materialGroups.length}`);
|
|
|
+ for (let i = 0; i < materialGroups.length; i++) {
|
|
|
+ let group = materialGroups[i];
|
|
|
+ let needStr = '';
|
|
|
+ for (let j = 0; j < group.length; j++) {
|
|
|
+ needStr += `${group[j].collectionName}x${group[i].number},`
|
|
|
+ }
|
|
|
+ lk.log(`组合${i}:${needStr.substring(0, needStr.length - 1)}`);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
async function tryToExecCompositeTask(taskId, taskInfo = {}) {
|
|
|
if (getCompositeTaskMode() == 1) {
|
|
|
let jsonStr = lk.getVal(GandartConstKey.CompositeTaskFinalList);
|
|
|
@@ -217,10 +229,11 @@ async function tryToExecCompositeTask(taskId, taskInfo = {}) {
|
|
|
let materialSelLst = await getCompositeMaterial(taskId, taskInfo);
|
|
|
if (materialSelLst && materialSelLst.length > 0) {
|
|
|
let ret = calcCompositeGroups(materialSelLst);
|
|
|
+ // 材料排列组合
|
|
|
let materialGroups = ret[0];
|
|
|
+ printMaterialGroupsInfo(materialGroups);
|
|
|
// 获取用户材料拥有详情
|
|
|
let materialDict = ret[1];
|
|
|
- lk.log(`排列组合组数:${materialGroups.length}`);
|
|
|
for (let k in materialDict) {
|
|
|
let mInfo = materialDict[k];
|
|
|
gMaterialDetails[k] = await getDetailByCasting(mInfo.castingId, mInfo.collectionName);
|
|
|
@@ -229,9 +242,8 @@ async function tryToExecCompositeTask(taskId, taskInfo = {}) {
|
|
|
let validCompositeGroups = findValidGroupMaterialGroups(materialGroups, gMaterialDetails);
|
|
|
lk.setVal(GandartConstKey.CompositeTaskMateList, JSON.stringify(validCompositeGroups, null, 2));
|
|
|
|
|
|
- lk.log("test##########2");
|
|
|
+ lk.log(`预估可行组合数:${validCompositeGroups.length}`);
|
|
|
if (isGenFinalLisstEnable()) {
|
|
|
- lk.log("test##########3");
|
|
|
let compositeCountDict = getCompositeCountDict();
|
|
|
let finalGroups = [];
|
|
|
for (let k in compositeCountDict) {
|
|
|
@@ -241,7 +253,7 @@ async function tryToExecCompositeTask(taskId, taskInfo = {}) {
|
|
|
finalGroups = finalGroups.concat(arr);
|
|
|
}
|
|
|
}
|
|
|
- lk.log("test##########4");
|
|
|
+ lk.log(`最终选择可执行合成数:${finalGroups.length}`);
|
|
|
if (isExecFinalComposite()) {
|
|
|
if (finalGroups.length == 0) {
|
|
|
lk.log('暂无可行的合成组合,请检查');
|
|
|
@@ -373,10 +385,8 @@ function calcCompositeGroups(materialSelLst) {
|
|
|
materialDict[castingId] = materialInfo;
|
|
|
|
|
|
if (index != transArr.length - 1) {
|
|
|
- lk.log("array#" + index);
|
|
|
doArrangeMeterialGroup(transArr, index + 1, resultArr, resultTmp);
|
|
|
} else {
|
|
|
- lk.log("array#end");
|
|
|
resultArr.push([].concat(resultTmp));
|
|
|
}
|
|
|
}
|