feat: 允许设置是否检测mj任务已完成才可进行action操作 (close #349)

This commit is contained in:
CalciumIon 2024-07-08 16:48:10 +08:00
parent 45b9de9df9
commit 03b130f2b5
5 changed files with 30 additions and 2 deletions

View File

@ -4,6 +4,7 @@ var MjNotifyEnabled = false
var MjAccountFilterEnabled = false var MjAccountFilterEnabled = false
var MjModeClearEnabled = false var MjModeClearEnabled = false
var MjForwardUrlEnabled = true var MjForwardUrlEnabled = true
var MjActionCheckSuccessEnabled = true
const ( const (
MjErrorUnknown = 5 MjErrorUnknown = 5

View File

@ -99,6 +99,7 @@ func InitOptionMap() {
common.OptionMap["MjAccountFilterEnabled"] = strconv.FormatBool(constant.MjAccountFilterEnabled) common.OptionMap["MjAccountFilterEnabled"] = strconv.FormatBool(constant.MjAccountFilterEnabled)
common.OptionMap["MjModeClearEnabled"] = strconv.FormatBool(constant.MjModeClearEnabled) common.OptionMap["MjModeClearEnabled"] = strconv.FormatBool(constant.MjModeClearEnabled)
common.OptionMap["MjForwardUrlEnabled"] = strconv.FormatBool(constant.MjForwardUrlEnabled) common.OptionMap["MjForwardUrlEnabled"] = strconv.FormatBool(constant.MjForwardUrlEnabled)
common.OptionMap["MjActionCheckSuccessEnabled"] = strconv.FormatBool(constant.MjActionCheckSuccessEnabled)
common.OptionMap["CheckSensitiveEnabled"] = strconv.FormatBool(constant.CheckSensitiveEnabled) common.OptionMap["CheckSensitiveEnabled"] = strconv.FormatBool(constant.CheckSensitiveEnabled)
common.OptionMap["CheckSensitiveOnPromptEnabled"] = strconv.FormatBool(constant.CheckSensitiveOnPromptEnabled) common.OptionMap["CheckSensitiveOnPromptEnabled"] = strconv.FormatBool(constant.CheckSensitiveOnPromptEnabled)
//common.OptionMap["CheckSensitiveOnCompletionEnabled"] = strconv.FormatBool(constant.CheckSensitiveOnCompletionEnabled) //common.OptionMap["CheckSensitiveOnCompletionEnabled"] = strconv.FormatBool(constant.CheckSensitiveOnCompletionEnabled)
@ -210,6 +211,8 @@ func updateOptionMap(key string, value string) (err error) {
constant.MjModeClearEnabled = boolValue constant.MjModeClearEnabled = boolValue
case "MjForwardUrlEnabled": case "MjForwardUrlEnabled":
constant.MjForwardUrlEnabled = boolValue constant.MjForwardUrlEnabled = boolValue
case "MjActionCheckSuccessEnabled":
constant.MjActionCheckSuccessEnabled = boolValue
case "CheckSensitiveEnabled": case "CheckSensitiveEnabled":
constant.CheckSensitiveEnabled = boolValue constant.CheckSensitiveEnabled = boolValue
case "CheckSensitiveOnPromptEnabled": case "CheckSensitiveOnPromptEnabled":

View File

@ -415,9 +415,12 @@ func RelayMidjourneySubmit(c *gin.Context, relayMode int) *dto.MidjourneyRespons
originTask := model.GetByMJId(userId, mjId) originTask := model.GetByMJId(userId, mjId)
if originTask == nil { if originTask == nil {
return service.MidjourneyErrorWrapper(constant.MjRequestError, "task_not_found") return service.MidjourneyErrorWrapper(constant.MjRequestError, "task_not_found")
} else if originTask.Status != "SUCCESS" && relayMode != relayconstant.RelayModeMidjourneyModal {
return service.MidjourneyErrorWrapper(constant.MjRequestError, "task_status_not_success")
} else { //原任务的Status=SUCCESS则可以做放大UPSCALE、变换VARIATION等动作此时必须使用原来的请求地址才能正确处理 } else { //原任务的Status=SUCCESS则可以做放大UPSCALE、变换VARIATION等动作此时必须使用原来的请求地址才能正确处理
if constant.MjActionCheckSuccessEnabled {
if originTask.Status != "SUCCESS" && relayMode != relayconstant.RelayModeMidjourneyModal {
return service.MidjourneyErrorWrapper(constant.MjRequestError, "task_status_not_success")
}
}
channel, err := model.GetChannelById(originTask.ChannelId, true) channel, err := model.GetChannelById(originTask.ChannelId, true)
if err != nil { if err != nil {
return service.MidjourneyErrorWrapper(constant.MjRequestError, "get_channel_info_failed") return service.MidjourneyErrorWrapper(constant.MjRequestError, "get_channel_info_failed")

View File

@ -42,6 +42,7 @@ const OperationSetting = () => {
MjAccountFilterEnabled: false, MjAccountFilterEnabled: false,
MjModeClearEnabled: false, MjModeClearEnabled: false,
MjForwardUrlEnabled: false, MjForwardUrlEnabled: false,
MjActionCheckSuccessEnabled: false,
DrawingEnabled: false, DrawingEnabled: false,
DataExportEnabled: false, DataExportEnabled: false,
DataExportDefaultTime: 'hour', DataExportDefaultTime: 'hour',

View File

@ -16,6 +16,7 @@ export default function SettingsDrawing(props) {
MjAccountFilterEnabled: false, MjAccountFilterEnabled: false,
MjForwardUrlEnabled: false, MjForwardUrlEnabled: false,
MjModeClearEnabled: false, MjModeClearEnabled: false,
MjActionCheckSuccessEnabled: false,
}); });
const refForm = useRef(); const refForm = useRef();
const [inputsRow, setInputsRow] = useState(inputs); const [inputsRow, setInputsRow] = useState(inputs);
@ -156,6 +157,25 @@ export default function SettingsDrawing(props) {
} }
/> />
</Col> </Col>
<Col span={8}>
<Form.Switch
field={'MjActionCheckSuccessEnabled'}
label={
<>
检测必须等待绘图成功才能进行放大等操作
</>
}
size='large'
checkedText=''
uncheckedText=''
onChange={(value) =>
setInputs({
...inputs,
MjActionCheckSuccessEnabled: value,
})
}
/>
</Col>
</Row> </Row>
<Row> <Row>
<Button size='large' onClick={onSubmit}> <Button size='large' onClick={onSubmit}>