| | |
| | | </div> |
| | | |
| | | <div class="flex-auto !overflow-x-auto gap-y-2 flex-col flex nodrag"> |
| | | <div v-for="(item, index) in conditionGroupList" class="flex flex-col gap-3 relative group/conditionGroup"> |
| | | <div v-for="(item, index) in conditionGroupList" :key="item.id" class="flex flex-col gap-3 relative group/conditionGroup"> |
| | | <div class="flex-items-center justify-between"> |
| | | <div class="text-lg font-bold">如果</div> |
| | | <div class="flex-items-center gap-3"> |
| | | <div class="text-lg font-bold">{{ item.conditions ? '如果' : '否则' }}</div> |
| | | <div class="flex-items-center gap-3" v-if="item.conditions"> |
| | | <el-select v-model="item.operator" class="w-[130px]"> |
| | | <el-option |
| | | v-for="item in Object.keys(conditionOperatorMap)" |
| | |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="flex flex-col gap-y-2"> |
| | | <div class="flex flex-col gap-y-2" v-if="item.conditions"> |
| | | <div v-for="(subItem, subIndex) in item.conditions" class="ml-5 flex-items-center gap-x-2 group/conditionItem pr-8"> |
| | | <el-input filterable class="w-[120px] flex-0" v-model="subItem.left_value" placeholder="输入变量"> </el-input> |
| | | <el-select v-model="subItem.comparison_operation" class="flex-0 w-[120px]" placeholder="选择条件"> |
| | |
| | | </div> |
| | | <el-button class="w-fit mt-3" type="primary" @click="addConditionItem(item)">添加条件</el-button> |
| | | </div> |
| | | <el-button v-else @click="addConditionBranch" class="w-fit mt-3" type="success">添加分支</el-button> |
| | | <Handle class="!right-0 !-translate-y-4" :id="item.id" type="source" :position="Position.Right" /> |
| | | |
| | | </div> |
| | | |
| | | <div class="flex flex-col gap-3 relative pr-8"> |
| | | <div class="flex-items-center justify-between"> |
| | | <div class="text-lg font-bold">否则</div> |
| | | <!-- <el-select class="w-[130px]"> |
| | | <el-option |
| | | v-for="item in Object.keys(conditionOperatorMap)" |
| | | :key="item" |
| | | :value="parseInt(item)" |
| | | :label="conditionOperatorMap[item]" |
| | | ></el-option> |
| | | </el-select> --> |
| | | </div> |
| | | |
| | | <div class="flex-column"> |
| | | <el-button @click="addConditionBranch" class="w-fit mt-3" type="success">添加分支</el-button> |
| | | </div> |
| | | <Handle class="!right-0 !-translate-y-4" :id="otherHandleId" type="source" :position="Position.Right" /> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | <!-- <Handle :id="handleId" type="source" :position="Position.Right" /> --> |
| | | </div> |
| | | |
| | | <!-- <div> |
| | | <span>起始</span> |
| | | |
| | | <Handle type="source" :position="Position.Right" /> |
| | | </div> --> |
| | | </template> |
| | | |
| | | <script lang="ts" setup> |
| | |
| | | }; |
| | | const addConditionBranch = () => { |
| | | const conditionGroup = ConditionHelper.getDefaultConditionGroup(); |
| | | conditionGroupList.value.push(conditionGroup); |
| | | // 不能删除其他分支 |
| | | conditionGroupList.value.splice(-1,0,conditionGroup) |
| | | }; |
| | | |
| | | const delConditionBranch = (index) => { |