progress
This commit is contained in:
parent
2afed3a4f0
commit
564866393f
7 changed files with 43 additions and 23 deletions
|
@ -7,9 +7,8 @@ export abstract class CreateInstanceScenario<V extends Instance> extends Callbac
|
|||
abstract validationModel: V;
|
||||
abstract databaseModel: any;
|
||||
call = async (model: V): ResponseBase => {
|
||||
model.instancePath = `${model.path}/${model.instanceName}`;
|
||||
console.log("INSTANCE PATh");
|
||||
console.log(model.instancePath)
|
||||
model.instancePath = `${model.path.pathNormalize()}/${model.instanceName}`.pathNormalize();
|
||||
model.path = model.path.pathNormalize();
|
||||
return (await new CreateFolderUseCase().call(model.instancePath)).map(
|
||||
async () => await new CreateDataBaseModelUseCase(this.databaseModel).call(model)
|
||||
);
|
||||
|
|
|
@ -21,8 +21,7 @@ export class ExecInstanceScenario extends CallbackStrategyWithIdQuery {
|
|||
await new ReadByIdDataBaseModelUseCase<IDigitalTwinsInstanceModel>(DigitalTwinsInstanceDatabaseModel).call(id)
|
||||
).map(
|
||||
(document) => (
|
||||
console.log('DOCUMeNT PATH'),
|
||||
console.log(document.instancePath.pathNormalize()),
|
||||
|
||||
new ExecProcessUseCase().call(
|
||||
document.instancePath,
|
||||
`python3 $GET_INTERFACES --path ${document.instancePath.pathNormalize()} --package '${JSON.stringify(
|
||||
|
|
|
@ -139,3 +139,6 @@ export const ff1Result = `{
|
|||
"empty":\${NAME:string:default},
|
||||
"params": \${ITEM:Array<ITEM>:[]}
|
||||
}`;
|
||||
// {
|
||||
// "process":\${<SelectProcess/>:OBJECT:{"type": "OBJECT_DETECTION"}
|
||||
// }
|
|
@ -1,10 +1,18 @@
|
|||
import { IsObject, IsString } from "class-validator";
|
||||
import { ValidationModel } from "../../../../../model/validation_model";
|
||||
import { CalculationModel } from "../../../../../../features/calculation_instance/model/calculation_model";
|
||||
|
||||
|
||||
export class SelectProcessModel extends ValidationModel {
|
||||
@IsString()
|
||||
type: string;
|
||||
type: string = '';
|
||||
@IsObject()
|
||||
selectProcess?: any;
|
||||
}
|
||||
selectProcess?: SelectProcess;
|
||||
}
|
||||
|
||||
|
||||
|
||||
export interface SelectProcess {
|
||||
value: CalculationModel;
|
||||
}
|
||||
|
|
@ -8,12 +8,18 @@ import { SelectProcessModel } from "../model/select_process_model";
|
|||
import { Loader } from "../../../../loader/loader";
|
||||
import { CoreSelect } from "../../../../select/select";
|
||||
import { message } from "antd";
|
||||
import { CalculationModel } from "../../../../../../features/calculation_instance/model/calculation_model";
|
||||
|
||||
export const SelectProcess = observer((props: IFormBuilderComponentsProps<any>) => {
|
||||
export const SelectProcess = observer((props: IFormBuilderComponentsProps<SelectProcessModel>) => {
|
||||
const [store] = useState(new SelectProcessStore());
|
||||
useEffect(() => {
|
||||
console.log(props.dependency)
|
||||
store.loadClassInstance(SelectProcessModel, props.dependency);
|
||||
console.log(props.dependency);
|
||||
if (typeof props.dependency === "string") {
|
||||
store.loadClassInstance(SelectProcessModel, JSON.parse(props.dependency));
|
||||
} else {
|
||||
store.loadClassInstance(SelectProcessModel, props.dependency);
|
||||
}
|
||||
|
||||
store.init();
|
||||
}, []);
|
||||
return (
|
||||
|
@ -23,16 +29,18 @@ export const SelectProcess = observer((props: IFormBuilderComponentsProps<any>)
|
|||
) : (
|
||||
<div>
|
||||
<CoreSelect
|
||||
items={store.calculationInstances.map((el) => el.name)}
|
||||
value={store.viewModel?.selectProcess?.name ?? ""}
|
||||
label={`Процесс тип ${store.viewModel?.type}`}
|
||||
onChange={async (value: string, index: number) => (
|
||||
store.updateForm({ selectProcess: store.calculationInstances.atR(index).map((el) => el) }),
|
||||
items={store.calculationInstances.map((el) => el.instanceName)}
|
||||
value={store.viewModel?.selectProcess?.value.instanceName ?? ""}
|
||||
label={`Процесс тип ${store?.viewModel?.type ?? ""}`}
|
||||
onChange={async (value: string, index: number) => {
|
||||
store.updateForm({
|
||||
selectProcess: { value: store.calculationInstances.at(index) ?? CalculationModel.empty() },
|
||||
});
|
||||
(await store.viewModel.valid<SelectProcessModel>()).fold(
|
||||
(model) => props.onChange(model),
|
||||
(error) => message.error(error)
|
||||
)
|
||||
)}
|
||||
);
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
|
|
|
@ -60,7 +60,7 @@ export const CalculationInstanceScreen = observer(() => {
|
|||
() => store.deleteInstance(el._id ?? ""),
|
||||
() => store.execSkill(el._id ?? ""),
|
||||
() => store.execSkill(el._id ?? ""),
|
||||
() => store.changeProcessStatus(el._id ?? ''),
|
||||
() => store.changeProcessStatus(el._id ?? "")
|
||||
)}
|
||||
</span>
|
||||
);
|
||||
|
@ -94,7 +94,10 @@ export const CalculationInstanceScreen = observer(() => {
|
|||
<div style={{ display: "flex", flexDirection: "column", justifyContent: "space-between", height: "100%" }}>
|
||||
<FormBuilder
|
||||
formBuilder={store.editProcess?.formBuilder ?? FormBuilderValidationModel.empty()}
|
||||
onChange={(formBuilder) => store.updateForm({ formBuilder: formBuilder })}
|
||||
onChange={(formBuilder) => {
|
||||
console.log(formBuilder);
|
||||
store.updateForm({ formBuilder: formBuilder });
|
||||
}}
|
||||
/>
|
||||
|
||||
<div style={{ display: "flex" }}>
|
||||
|
@ -151,7 +154,7 @@ export const CalculationInstanceScreen = observer(() => {
|
|||
<CoreInput
|
||||
trim={true}
|
||||
label="Команда для запуска"
|
||||
onChange={(text) => store.updateForm({ script: text.replaceAll("\n", "") })}
|
||||
onChange={(text) => store.updateForm({ script: text.replaceAll("\n", "") })}
|
||||
/>
|
||||
<InputV2
|
||||
label="FormBuilder Result"
|
||||
|
@ -214,7 +217,7 @@ export const CalculationInstanceScreen = observer(() => {
|
|||
store.isModalOpen = false;
|
||||
}}
|
||||
>
|
||||
<FormBuilder formBuilder={store.viewModel.formBuilder} onChange={() => {}} />
|
||||
<FormBuilder formBuilder={store.viewModel.formBuilder} onChange={(e) => {}} />
|
||||
</Modal>
|
||||
</>
|
||||
);
|
||||
|
|
|
@ -129,7 +129,7 @@ export class CalculationInstanceStore extends UiDrawerFormState<calculationModel
|
|||
saveEdiSkill = async () => {
|
||||
this.editDrawer(DrawersSkill.EDIT_SKILL, false);
|
||||
(await this.viewModel.valid<calculationModel>()).fold(
|
||||
async (model) => await this.calculationHttpRepository.editCalculation(model),
|
||||
async (model) => (await this.calculationHttpRepository.editCalculation(model), await this.init()),
|
||||
async (err) => message.error(err)
|
||||
);
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue