feat: 添加任务是否需执行的配置。
This commit is contained in:
parent
590e14a36a
commit
12f485986b
@ -116,6 +116,7 @@ func ProcessWorkOrder(c *gin.Context) {
|
|||||||
FlowProperties int `json:"flow_properties"` // 流转类型 0 拒绝,1 同意,2 其他
|
FlowProperties int `json:"flow_properties"` // 流转类型 0 拒绝,1 同意,2 其他
|
||||||
Remarks string `json:"remarks"` // 处理的备注信息
|
Remarks string `json:"remarks"` // 处理的备注信息
|
||||||
Tpls []map[string]interface{} `json:"tpls"` // 表单数据
|
Tpls []map[string]interface{} `json:"tpls"` // 表单数据
|
||||||
|
IsExecTask bool `json:"is_exec_task"` // 是否执行任务
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -146,6 +147,7 @@ func ProcessWorkOrder(c *gin.Context) {
|
|||||||
params.FlowProperties, // 流转属性
|
params.FlowProperties, // 流转属性
|
||||||
params.Remarks, // 备注信息
|
params.Remarks, // 备注信息
|
||||||
params.Tpls, // 工单数据更新
|
params.Tpls, // 工单数据更新
|
||||||
|
params.IsExecTask, // 是否执行任务
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
app.Error(c, -1, err, fmt.Sprintf("处理工单失败,%v", err.Error()))
|
app.Error(c, -1, err, fmt.Sprintf("处理工单失败,%v", err.Error()))
|
||||||
|
@ -40,6 +40,7 @@ func CreateWorkOrder(c *gin.Context) (err error) {
|
|||||||
SourceState string `json:"source_state"`
|
SourceState string `json:"source_state"`
|
||||||
Tasks json.RawMessage `json:"tasks"`
|
Tasks json.RawMessage `json:"tasks"`
|
||||||
Source string `json:"source"`
|
Source string `json:"source"`
|
||||||
|
IsExecTask bool `json:"is_exec_task"`
|
||||||
}
|
}
|
||||||
paramsValue struct {
|
paramsValue struct {
|
||||||
Id int `json:"id"`
|
Id int `json:"id"`
|
||||||
@ -348,23 +349,26 @@ func CreateWorkOrder(c *gin.Context) (err error) {
|
|||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 执行任务
|
if workOrderValue.IsExecTask {
|
||||||
err = json.Unmarshal(workOrderValue.Tasks, &taskList)
|
// 执行任务
|
||||||
if err != nil {
|
err = json.Unmarshal(workOrderValue.Tasks, &taskList)
|
||||||
return
|
|
||||||
}
|
|
||||||
if len(taskList) > 0 {
|
|
||||||
paramsValue.Id = workOrderInfo.Id
|
|
||||||
paramsValue.Title = workOrderInfo.Title
|
|
||||||
paramsValue.Priority = workOrderInfo.Priority
|
|
||||||
paramsValue.FormData = workOrderValue.Tpls["form_data"]
|
|
||||||
var params []byte
|
|
||||||
params, err = json.Marshal(paramsValue)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if len(taskList) > 0 {
|
||||||
|
paramsValue.Id = workOrderInfo.Id
|
||||||
|
paramsValue.Title = workOrderInfo.Title
|
||||||
|
paramsValue.Priority = workOrderInfo.Priority
|
||||||
|
paramsValue.FormData = workOrderValue.Tpls["form_data"]
|
||||||
|
var params []byte
|
||||||
|
params, err = json.Marshal(paramsValue)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
go ExecTask(taskList, string(params))
|
go ExecTask(taskList, string(params))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -404,6 +404,7 @@ func (h *Handle) HandleWorkOrder(
|
|||||||
flowProperties int,
|
flowProperties int,
|
||||||
remarks string,
|
remarks string,
|
||||||
tpls []map[string]interface{},
|
tpls []map[string]interface{},
|
||||||
|
isExecTask bool,
|
||||||
) (err error) {
|
) (err error) {
|
||||||
h.workOrderId = workOrderId
|
h.workOrderId = workOrderId
|
||||||
h.flowProperties = flowProperties
|
h.flowProperties = flowProperties
|
||||||
@ -907,30 +908,31 @@ func (h *Handle) HandleWorkOrder(
|
|||||||
}(bodyData)
|
}(bodyData)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 执行流程公共任务及节点任务
|
if isExecTask {
|
||||||
if h.stateValue["task"] != nil {
|
// 执行流程公共任务及节点任务
|
||||||
for _, task := range h.stateValue["task"].([]interface{}) {
|
if h.stateValue["task"] != nil {
|
||||||
tasks = append(tasks, task.(string))
|
for _, task := range h.stateValue["task"].([]interface{}) {
|
||||||
}
|
tasks = append(tasks, task.(string))
|
||||||
}
|
|
||||||
continueTag:
|
|
||||||
for _, task := range tasks {
|
|
||||||
for _, t := range execTasks {
|
|
||||||
if t == task {
|
|
||||||
continue continueTag
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
execTasks = append(execTasks, task)
|
continueTag:
|
||||||
}
|
for _, task := range tasks {
|
||||||
|
for _, t := range execTasks {
|
||||||
|
if t == task {
|
||||||
|
continue continueTag
|
||||||
|
}
|
||||||
|
}
|
||||||
|
execTasks = append(execTasks, task)
|
||||||
|
}
|
||||||
|
|
||||||
paramsValue.Id = h.workOrderDetails.Id
|
paramsValue.Id = h.workOrderDetails.Id
|
||||||
paramsValue.Title = h.workOrderDetails.Title
|
paramsValue.Title = h.workOrderDetails.Title
|
||||||
paramsValue.Priority = h.workOrderDetails.Priority
|
paramsValue.Priority = h.workOrderDetails.Priority
|
||||||
params, err := json.Marshal(paramsValue)
|
params, err := json.Marshal(paramsValue)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
}
|
||||||
|
go ExecTask(execTasks, string(params))
|
||||||
}
|
}
|
||||||
go ExecTask(execTasks, string(params))
|
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
package captcha
|
package captcha
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"image/color"
|
||||||
|
|
||||||
"github.com/google/uuid"
|
"github.com/google/uuid"
|
||||||
"github.com/mojocn/base64Captcha"
|
"github.com/mojocn/base64Captcha"
|
||||||
"image/color"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var store = base64Captcha.DefaultMemStore
|
var store = base64Captcha.DefaultMemStore
|
||||||
@ -20,9 +21,8 @@ type configJsonBody struct {
|
|||||||
DriverDigit *base64Captcha.DriverDigit
|
DriverDigit *base64Captcha.DriverDigit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func DriverStringFunc() (id, b64s string, err error) {
|
||||||
func DriverStringFunc() (id, b64s string, err error) {
|
e := configJsonBody{}
|
||||||
e :=configJsonBody{}
|
|
||||||
e.Id = uuid.New().String()
|
e.Id = uuid.New().String()
|
||||||
e.DriverString = base64Captcha.NewDriverString(46, 140, 2, 2, 4, "234567890abcdefghjkmnpqrstuvwxyz", &color.RGBA{240, 240, 246, 246}, []string{"wqy-microhei.ttc"})
|
e.DriverString = base64Captcha.NewDriverString(46, 140, 2, 2, 4, "234567890abcdefghjkmnpqrstuvwxyz", &color.RGBA{240, 240, 246, 246}, []string{"wqy-microhei.ttc"})
|
||||||
driver := e.DriverString.ConvertFonts()
|
driver := e.DriverString.ConvertFonts()
|
||||||
@ -30,12 +30,11 @@ func DriverStringFunc() (id, b64s string, err error) {
|
|||||||
return cap.Generate()
|
return cap.Generate()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func DriverDigitFunc() (id, b64s string, err error) {
|
func DriverDigitFunc() (id, b64s string, err error) {
|
||||||
e := configJsonBody{}
|
e := configJsonBody{}
|
||||||
e.Id = uuid.New().String()
|
e.Id = uuid.New().String()
|
||||||
e.DriverDigit = base64Captcha.DefaultDriverDigit
|
e.DriverDigit = base64Captcha.NewDriverDigit(80, 240, 4, 0.7, 80)
|
||||||
driver := e.DriverDigit
|
driver := e.DriverDigit
|
||||||
cap := base64Captcha.NewCaptcha(driver, store)
|
cap := base64Captcha.NewCaptcha(driver, store)
|
||||||
return cap.Generate()
|
return cap.Generate()
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user