工作流审批退回,撤销API

审批退回API

mutation {
  workflowUserTaskMutation {
    approveRejust(
      workflowUserTask: {id: 701530152718787758, userTaskViewName: "工作流任务待办xml_workflow", userTaskReadonlyViewName: "工作流任务待办detail_workflow", source: "超级管理员", statusDisplayName: "待处理", avatarUrl: "https://pamirs.oss-cn-hangzhou.aliyuncs.com/oinone/img/workflow/default.png", name: "测试流程", instanceId: 701530152718787737, taskId: 701530152718787756, definitionId: 701530152718787698, definitionVersion: 34, canAddSignApproval: false, content: null, nodeId: "APPROVAL0000000000014502", userType: USER_TYPE_USER, userId: 10001, model: "top.Teacher", nodeContext: "{\"id\":\"700755598316612629\",\"teacherName\":\"1234312\",\"readStatus\":\"NO_READ\",\"pamirsUser\":[]}", taskType: APPROVE, viewId: 701530152718787696, viewReadonlyId: 701530152718787697, taskCreateDate: "2025-01-22 14:31:12", flowCreateDate: "2025-01-22 14:30:50", allowTransfer: false, allowAddSign: false, allowFallback: true, allowStaging: true, allowAgree: true, allowReject: true, readConfirm: false, mustReason: false, isUrge: false, status: ACTIVE, filterAddSign: "id>=0 ", filterTransfer: "id>=0 ", hasFallback: true, workflowBackNode: {id: 701530152718787702, fallBackNodeName: "填写"}, filterFallBackNodeIds: "'WRITE0000000000014501'"}
    ) {
      id
      addSignUserId
      transferUserId
      workflowBackNodeId
      enableCustomView
      isCopy
      isRecall
      isClose
      isFallBack
      operateType
      workflowModule {
        id
        logo
        bitOptions
        attributes
        displayName
        sys
        name
        systemSource
        module
        sign
        abbr
        hash
        dsKey
        summary
        description
        state
        boot
        application
        latestVersion
        platformVersion
        publishedVersion
        publishCount
        defaultCategory
        category
        moduleDependencies
        moduleExclusions
        moduleUpstreams
        excludeHooks
        priority
        website
        author
        demo
        web
        license
        toBuy
        maintainer
        contributors
        url
        selfBuilt
        metaSource
        clientTypes
        show
        defaultHomePageModel
        homePageModel
        defaultHomePageName
        homePageName
        defaultLogo
        createDate
        writeDate
        createUid
        writeUid
      }
      module
      userTaskViewName
      userTaskReadonlyViewName
      source
      fromDepartment
      fromCorpName
      fromCorpLogo
      fromCorpId
      workflowVersion
      statusDisplayName
      helpDisplayName
      avatarUrl
      name
      title
      workflowUserInstanceId
      instanceId
      instance {
        id
        name
        title
        bizType
        source
        fromDepartment
        fromCorpName
        fromCorpLogo
        fromCorpId
        workflowVersion
        module
        version
        definitionCode
        workflowDCode
        currentNodeName
        triggerType
        status
        startDate
        endDate
        instanceCostTime
        context
        originNodeContext
        runtimeDefinition
        model
        errorMessage
        notifyErrorMessage
        parentTaskInstanceId
        masterInstanceId
        parentInstanceId
        isAsync
        initiatorUid
        currentNodeTag
        currentNodeId
        isUrge
        canUrge
        lastUrgeTime
        taskType
        hasApproval
        hasWrite
        taskPassedStatus
        tmpTaskType
        tmpTaskPassedStatus
        canRecall
        nodeContextSummary
        instanceStatusDisplayName
        dataBizId
        hasSaved
        createDate
        writeDate
        createUid
        writeUid
      }
      taskId
      taskInstance {
        id
        endFunId
        workflowName
        module
        workflowInstanceId
        nodeId
        nodeTag
        nodeName
        nodeDisplayName
        nodeDataId
        nodeDataIsCreateData
        nodeDesc
        autoPass
        isCurrent
        isHistory
        version
        orderNumber
        startDate
        finishDate
        taskCostTime
        status
        lastTaskInstanceId
        lastNodeId
        lastStatus
        hasFallback
        fallBackNodeId
        fallBackTaskInstanceId
        belongBranchIndex
        belongBranchNodeId
        deph
        errorMessage
        nodeContext
        model
        nodeDataBizId
        nodeDataBizIds
        originNodeContext
        dataSaveType
        hasSaved
        result
        missData
        locked
        branchCount
        passedBranchs
        postTime
        isDeadlineOperate
        lastUrgeTime
        canUrge
        isUrge
        isRecall
        belongLoopNodeId
        loopCurrent
        loopEnd
        isLoop
        enableEndFun
        isClose
        createDate
        writeDate
        createUid
        writeUid
      }
      definitionId
      definitionVersion
      canAddSignApproval
      flowDesc
      content
      nodeId
      nodeName
      nodeDesc
      userType
      userId
      employeeId
      roleId
      deptId
      nodePersonUser {
        userId
        userName
        avatarUrl
        status
        result
        remark
        pics
        addSignRemark
        addSignPics
      }
      model
      modelName
      nodeDataBizId
      nodeDataBizIds
      originNodeContext
      nodeContext
      nodeContextSummary
      taskType
      taskPassedStatus
      viewId
      viewReadonlyId
      taskCreateDate
      taskFinishDate
      flowCreateDate
      allowTransfer
      allowAddSign
      allowModify
      allowFallback
      allowStaging
      allowAgree
      allowReject
      allowPost
      deadlineType
      allowAutoTransfer
      allowAutoAgree
      deadline
      remindMinuteEnable
      remindMinute
      remindMinuteUnit
      deadlineStatus
      readDone
      readConfirm
      remindContent
      remindNum
      isDeadlineOperate
      mustReason
      isUrge
      logDetails {
        id
        workflowUserTaskLogId
        taskId
        orderNumber
        nodeName
        instanceId
        startDate
        finishDate
        operator
        operation
        operationName
        nodeType
        remark
        createDate
        writeDate
        createUid
        writeUid
      }
      historyTasks {
        id
        workflowUserTaskId
        nodeId
        nodeTag
        status
        createDate
        writeDate
        createUid
        writeUid
      }
      status
      result
      remark
      opRemark
      addSignUser {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      transferUser {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      autoTransferUsers {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      selectType
      transferInfo {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      addSignInfo {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      transferPerson {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      addSignPerson {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      isAutoTransfer
      filterAddSign
      filterTransfer
      filterAutoTransfer
      canOperate
      hasAddSign
      operation
      initiator {
        id
        code
        countryId
        avatarMediumId
        currencyId
        avatarBigId
        themeId
        signUpType
        userType
        login
        phoneCode
        phone
        email
        initialPassword
        isInitialPassword
        password
        source
        active
        name
        nickname
        realname
        avatarUrl
        langId
        timeZoneType
        contactPhone
        contactEmail
        birthday
        gender
        idCard
        regDate
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      createDate
      initiatorUid
      hasFallback
      workflowBackNode {
        id
        nodeId
        fallBackNodeId
        fallBackNodeName
        fallBackNodeLabel
        definitionId
        workflowCode
        nodeModel
        nodeModelId
        createDate
        writeDate
        createUid
        writeUid
      }
      emptyWorkflowBackNode
      filterFallBackNodeIds
      flowTreeJson
      taskTime
      isMobile
      nodeInfos {
        orderNum
        taskInstanceId
        branchOrderNum
        branchUniqueCode
        branchName
        isSelected
        isPassed
        isHistory
        hasStart
        fallbackTaskInstanceId
        taskFinishedDate
        nodeId
        nodeName
        nodeTag
        remark
        userId
        isDottedLine
        userName
        avatarUrl
        taskInstanceStatus
        statusDisplayName
        pics
        addSignRemark
        addSignPics
        canUrge
      }
      writeDate
      instanceStatusDisplayName
      fallBackNodeId
      needSendMessage
      pics
      attachments {
        id
        code
        name
        url
        type
        size
        mime
        isPublic
        resId
        resType
        createDate
        writeDate
        createUid
        writeUid
      }
      addSignRemark
      addSignPics
      addSignAttachments {
        id
        code
        name
        url
        type
        size
        mime
        isPublic
        resId
        resType
        createDate
        writeDate
        createUid
        writeUid
      }
      mainModel
      dataBizId
      createUid
      sharingUser {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      writeUid
    }
  }
}

撤销API

mutation {
  workBenchWorkflowUserTaskInitiateMutation {
    recall(
      workflowUserTaskInitiate: {id: 701530152718787737, tag: TAG_PASS, initiateSelect: TOTAL, taskTypeSelect: TOTAL, name: "测试流程", workflowModule: {id: 644013028727063175, displayName: "oinone功能展示", module: "top_demo"}, source: "超级管理员", module: "top_demo", status: PROCESSING, canUrge: true, canRecall: true, createDate: "2025-01-22 14:30:50"}
    ) {
      id
      tag
      initiateSelect
      taskTypeSelect
      name
      title
      bizType
      workflowModule {
        id
        logo
        bitOptions
        attributes
        displayName
        sys
        name
        systemSource
        module
        sign
        abbr
        hash
        dsKey
        summary
        description
        state
        boot
        application
        latestVersion
        platformVersion
        publishedVersion
        publishCount
        defaultCategory
        category
        moduleDependencies
        moduleExclusions
        moduleUpstreams
        excludeHooks
        priority
        website
        author
        demo
        web
        license
        toBuy
        maintainer
        contributors
        url
        selfBuilt
        metaSource
        clientTypes
        show
        defaultHomePageModel
        homePageModel
        defaultHomePageName
        homePageName
        defaultLogo
        createDate
        writeDate
        createUid
        writeUid
      }
      source
      fromDepartment
      fromCorpName
      fromCorpLogo
      fromCorpId
      workflowVersion
      module
      version
      definition {
        id
        code
        initiatorId
        bizType
        triggerType
        module
        content
        version
        active
        workflowCode
        workflowName
        designerContent
        createDate
        writeDate
        createUid
        writeUid
      }
      definitionCode
      workflowDCode
      currentNodeName
      triggerType
      status
      startDate
      endDate
      instanceCostTime
      context
      originNodeContext
      runtimeDefinition
      workflowTaskInstances {
        id
        endFunId
        workflowName
        module
        workflowInstanceId
        nodeId
        nodeTag
        nodeName
        nodeDisplayName
        nodeDataId
        nodeDataIsCreateData
        nodeDesc
        autoPass
        isCurrent
        isHistory
        version
        orderNumber
        startDate
        finishDate
        taskCostTime
        status
        lastTaskInstanceId
        lastNodeId
        lastStatus
        hasFallback
        fallBackNodeId
        fallBackTaskInstanceId
        belongBranchIndex
        belongBranchNodeId
        deph
        errorMessage
        nodeContext
        model
        nodeDataBizId
        nodeDataBizIds
        originNodeContext
        dataSaveType
        hasSaved
        result
        missData
        locked
        branchCount
        passedBranchs
        postTime
        isDeadlineOperate
        lastUrgeTime
        canUrge
        isUrge
        isRecall
        belongLoopNodeId
        loopCurrent
        loopEnd
        isLoop
        enableEndFun
        isClose
        createDate
        writeDate
        createUid
        writeUid
      }
      modelDefinition {
        id
        labelFields
        attributes
        label
        bitOptions
        sys
        sign
        systemSource
        hash
        pk
        module
        dsModule
        moduleName
        moduleAbbr
        model
        displayName
        name
        lname
        table
        dsKey
        remark
        type
        multiTable
        multiTableTypeField
        multiTableType
        redundancy
        proxy
        isRelationship
        summary
        description
        priority
        dataManager
        ordering
        sequenceCode
        superModels
        unInheritedFields
        unInheritedFunctions
        uniques
        indexes
        logicDelete
        logicDeleteColumn
        logicDeleteValue
        logicNotDeleteValue
        optimisticLockerField
        underCamel
        capitalMode
        charset
        collate
        categoryId
        show
        createDate
        writeDate
        createUid
        writeUid
      }
      model
      aliveUserTask {
        id
        addSignUserId
        transferUserId
        workflowBackNodeId
        enableCustomView
        isCopy
        isRecall
        isClose
        isFallBack
        operateType
        module
        userTaskViewName
        userTaskReadonlyViewName
        source
        fromDepartment
        fromCorpName
        fromCorpLogo
        fromCorpId
        workflowVersion
        statusDisplayName
        helpDisplayName
        avatarUrl
        name
        title
        workflowUserInstanceId
        instanceId
        taskId
        definitionId
        definitionVersion
        canAddSignApproval
        flowDesc
        content
        nodeId
        nodeName
        nodeDesc
        userType
        userId
        employeeId
        roleId
        deptId
        model
        modelName
        nodeDataBizId
        nodeDataBizIds
        originNodeContext
        nodeContext
        nodeContextSummary
        taskType
        taskPassedStatus
        viewId
        viewReadonlyId
        taskCreateDate
        taskFinishDate
        flowCreateDate
        allowTransfer
        allowAddSign
        allowModify
        allowFallback
        allowStaging
        allowAgree
        allowReject
        allowPost
        deadlineType
        allowAutoTransfer
        allowAutoAgree
        deadline
        remindMinuteEnable
        remindMinute
        remindMinuteUnit
        deadlineStatus
        readDone
        readConfirm
        remindContent
        remindNum
        isDeadlineOperate
        mustReason
        isUrge
        status
        result
        remark
        opRemark
        selectType
        isAutoTransfer
        filterAddSign
        filterTransfer
        filterAutoTransfer
        canOperate
        hasAddSign
        operation
        createDate
        initiatorUid
        hasFallback
        emptyWorkflowBackNode
        filterFallBackNodeIds
        flowTreeJson
        taskTime
        isMobile
        writeDate
        instanceStatusDisplayName
        fallBackNodeId
        needSendMessage
        pics
        addSignRemark
        addSignPics
        mainModel
        dataBizId
        createUid
        writeUid
      }
      errorMessage
      notifyErrorMessage
      parentTaskInstanceId
      masterInstanceId
      parentInstanceId
      isAsync
      initiator {
        id
        code
        countryId
        avatarMediumId
        currencyId
        avatarBigId
        themeId
        signUpType
        userType
        login
        phoneCode
        phone
        email
        initialPassword
        isInitialPassword
        password
        source
        active
        name
        nickname
        realname
        avatarUrl
        langId
        timeZoneType
        contactPhone
        contactEmail
        birthday
        gender
        idCard
        regDate
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      initiatorUid
      currentNodeTag
      currentNodeId
      isUrge
      canUrge
      lastUrgeTime
      taskType
      hasApproval
      hasWrite
      taskPassedStatus
      tmpTaskType
      tmpTaskPassedStatus
      canRecall
      nodeContextSummary
      instanceStatusDisplayName
      dataBizId
      hasSaved
      createDate
      writeDate
      createUid
      writeUid
    }
  }
}

Oinone社区 作者:yexiu原创文章,如若转载,请注明出处:https://doc.oinone.top/other/20354.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
yexiu的头像yexiu数式员工
上一篇 2025年1月16日 pm10:38
下一篇 2025年1月26日 am11:40

相关推荐

  • 新人引导文档

    类型 文档链接 入门参考必看 7天入门到精通 Oinone 初级学习路径 Oinone 初级学习路径 平台部署启动 无代码docker启动说明 低代码启动说明 前端环境和启动前端工程 无代码设计器启动方式 后端无代码设计器Jar包启动方法 平台部署及依赖说明 Oinone平台部署及依赖说明(v5.0) 问题排查方法 问题排查工具使用手册 前后端研发帮助文档 前端文档 后端文档 项目开发实践要点 【前端】项目开发前端知识要点地图 【后端】项目开发后端知识要点地图 版本升级说明 版本更新日志 工具包 【附件一】下载说明 许可证使用说明 pamirs-license 许可证使用常见问题 更多文档新人引导建议,可以下方评论

    2024年7月15日
    1.0K00
  • SSO单点登录

    SSO相关 1、SSO服务端:在应用中找到【单点登录】,创建一个应用标识2、SSO登录认证,选择grant_type=password,后面带上用户名和密码。参考下面的链接(POST请求):http://127.0.0.1:8190/pamirs/sso/authorize?redirect_uri=http://127.0.0.1:8193/page;module=ysps;model=ysps.notify.ProjectPosting;action=homepage;scene=homepage;target=OPEN_WINDOW;path=/ysps/homepage&response_type=code&client_id=替换为已创建的应用唯一标识&grant_type=password&username=admin&password=admin 其中: redirect_uri是认证通过后的跳转,目前的场景可忽略 client_id替换为在单点登录也上创建的应用唯一标识 认证方式grant_type=password固定,后面是实际的用户名和密码 操作步骤: 请求服务端工程SSO登录认证,会返回token信息,拿着这个信息去客户端工程访问即可。 请求服务端工程返回token信息: curl –location –request POST ‘http://127.0.0.1:8190/pamirs/sso/authorize’ \ –header ‘User-Agent: Apifox/1.0.0 (https://apifox.com)’ \ –header ‘Accept: */*’ \ –header ‘Host: 127.0.0.1:8190’ \ –header ‘Connection: keep-alive’ \ –header ‘Content-Type: application/x-www-form-urlencoded’ \ –header ‘Cookie: pamirs_uc_session_id=88fd2459446a4a20ab0a505bdaf78ebe’ \ –data-urlencode ‘appkey=1d2195bac42e44e895ea8e030aaa4e52’ \ –data-urlencode ‘appSecret=JNEyibFBIb2N3tdLmW/M9bnpf120/I6fFMMf86OQlP/wlL5qhJCF3KdAKHlJT0jECmXmJRfTCSlnmB5cWHRsenNGND+TMoXObzDPK7umxazCnaZYiW7JDeuZUOzqskhBPkEJSURAZR5xu1c6UYv542BlHAPsEi+ujnKeCYcKiFHyw7fIB1aijNyCz8d9teUEGYYTtYTXoNp/4Ts8AIJn8xkTjvEq6V9uYOExDEuYGxMgN76ZaiwpbT5387eZy4XCDIy0XWfZo/kv7X+s+rjwlsxWA7jp1w5dDaRmSd4rPO2GSEcL64Pje/Ct5xznhNwH6T5KDd2BLfbZikonh624nqW4hdlVxx/EQUpYp6Yc4Wet6b/DkggCVIZPpcO9pSuRJoC2jGPMrGHM3vYR0YtfFqCJ2/x3m/lQr2v+bP4pGzcRuuCy2tyOZA1uurA23xlssehz4geGiJArkpAUKKUkcafx+dLWODHOcgBKBz6wY38PAcbLkgn6gK6lmmR7cUiDmzmEEor6pYb64YG6tPmpm4AQeBoQYrsyCorA4Ds08nAiPFWUCXcHQCVUbHPTOwHHChFO1lXH/VjkfDv0OI1CD8mZI7ZeK794aIBZdvQGCI+ayQU+5CD1asDNg/M01nnNdWKB7rS9rMvbUOlSNguboAgRbiz3pEAxGJrZUPvkDHM=’ { “access_token”: “eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3NDQyNTk2MTcsInN1YiI6IntcImNsaWVudElkXCI6XCJwYW1pcnNfMjc5YjcwMDBlNDE3NDMxMmFmNDAyMDM0YjhlZjFhOWRcIixcInJhbmRvbUFrSWRcIjpcIjM0MDBiYzY0Njk1MzQzODA4ZTlhNmZhNWRmZjU0MTc2XCIsXCJvcGVuSWRcIjpcIjEwMDAxXCJ9In0.iJ-meyxAGW189Y3aK9Z2rMbf9_MsTKVTfnf3XsDR4iq6qvCGYkiq5197r4A54wwdKAzPZ-iDgkQOjWDh8AYu4A”, “token_type”: null, “refresh_token”: “eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3NDQ4NTcyMTcsInN1YiI6IntcImRhdGVUaW1lXCI6XCIxNzQ0MjUyNDE3NDc3XCIsXCJjbGllbnRJZFwiOlwicGFtaXJzXzI3OWI3MDAwZTQxNzQzMTJhZjQwMjAzNGI4ZWYxYTlkXCIsXCJvcGVuSWRcIjpcIjEwMDAxXCJ9In0.TZaK8OuPKudd3YX6AF23m7aplJF7OQlBEDkj0AnPkQdw7aja2WhS7q-VwjPfhqSmfAp-oaaUIcN7Zlune9VLTA”, “expires_in”: 7200, “refresh_token_expiresIn”: 604800 } 发起客户端工程请求。 注意:请求Headers中需携带token参数信息,token为服务端工程返回token信息,且请求时Authorization参数需加上标识 Bearer+空格 –header 'loginType: OAUTH' –header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3NDQyMDYwNjUsInN1YiI6IntcImNsaWVudElkXCI6XCJwYW1pcnNfMjc5YjcwMDBlNDE3NDMxMmFmNDAyMDM0YjhlZjFhOWRcIixcInJhbmRvbUFrSWRcIjpcImEzZWZkNjZkMDNlNjQ5MDY4OGU4Y2FhYmIwNjZmZGU4XCIsXCJvcGVuSWRcIjpcIjEwMDAxXCJ9In0.gapCpvM8PCit1oSHv-zJ2tATkCuVQBzqWGebvBcUX2O0bqP9aAhVqQxdNLM19vCqP5s3CXoNk-xzMUu-mo-hSg' curl –location –request POST ‘http://127.0.0.1:8092/pamirs/base’ \ –header ‘loginType: OAUTH’ \ –header ‘Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3NDQyMDYwNjUsInN1YiI6IntcImNsaWVudElkXCI6XCJwYW1pcnNfMjc5YjcwMDBlNDE3NDMxMmFmNDAyMDM0YjhlZjFhOWRcIixcInJhbmRvbUFrSWRcIjpcImEzZWZkNjZkMDNlNjQ5MDY4OGU4Y2FhYmIwNjZmZGU4XCIsXCJvcGVuSWRcIjpcIjEwMDAxXCJ9In0.gapCpvM8PCit1oSHv-zJ2tATkCuVQBzqWGebvBcUX2O0bqP9aAhVqQxdNLM19vCqP5s3CXoNk-xzMUu-mo-hSg’ \ –header ‘User-Agent: Apifox/1.0.0 (https://apifox.com)’ \ –header ‘Content-Type: application/json’ \ –data-raw ‘{“query”:”mutation {\n teacherMutation {\n queryTea(\n data: {id: 672564120180166836, teacherName: \”““`\”, readStatus: NO_READ, createDate: \”2024-11-05 11:30:36\”, writeDate: \”2024-11-05 11:30:36\”, createUid: 10001, writeUid: 10001}\n ) {\n id\n teacherName\n enumType\n petStoreId\n professionalId\n professional {\n professionalName\n id\n }\n readStatus\n nonStoredField\n createDate\n writeDate\n createUid\n writeUid\n }\n }\n}\n”,”variables”:{}}’ SSO服务端工程(5.3.X以上版本支持) 1、服务端工程依赖 1.1 pom依赖 <dependency> <groupId>pro.shushi.pamirs.core</groupId> <artifactId>pamirs-sso-oauth2-server</artifactId> </dependency> 1.2 application.yml配置文件里面添加sso启动模块。 pamirs: boot: modules: – sso SSO客户端工程(5.3.X以上版本支持) 1、客户端工程依赖 客户端工程即需要加入SSO的应用 1.1 pom依赖 <dependency> <groupId>pro.shushi.pamirs.core</groupId> <artifactId>pamirs-sso-oauth2-client</artifactId> </dependency> 1.2 application.yml配置 pamirs: sso: enabled: true client: # SSO服务端提供 client-id: pamirs_1fb51c50acbb4842b36844c5fbdc8d25 # SSO服务端提供 client-secret: B3ySNQEJdD8kZXuwmtaUtbWTo1vlIevmd0t4MIqRHfuM8VXzkMcs6YOox6cPPIESAL3yd2xQa+SCBNbLwYchQYSJonGPpvAmqapc5ZdskPicNENc8T2vTAMkc/YgvgUUK4U+/OuP5PrtRKC536nNXIZy1VHdf+whi44qOgd4RQYN0sIrog70CXsDQP3/2CHkcXWVRCqvZa/4mFmL1SBhQ+TLAIQg0jXlWr4lThUdL/X9M0YFXBaLJPKTlKi9l7K/8kTdJL2IgvSpByU0kGXjk0O/jZRBq1bHd/ZsC3Rw4kjiygIdxfL7Q/lw1/WAZ5XXibc5dlylUsnSJBZ9I4ZeCWq7lEZj//ctR7WZJCCeqi8rmCu+N2FQvye7kgiFIoZTFMNSRhW7ZMBBrsoJuf6DGWGvXvBE9w3P/IVFJMDmsopNbbFYTRcmY5e5tc775OCGMQDrW6j8IitTrOdRYzie0S2Jj9+Xw+Va1sEQLXWj0tBNQ9Tzv7fnRr5D6EBNtXra1TntKrvH/quBI5ujncBZXZ2cfEoMjFSw38edoTA8WPJv10WUA5EZsvfxqJLEiXFriJ9nleUBbCvL3Zuggn64CW4cH8mxGk7qvHQvXmwmp8phKyoKa8UDfDD2x7eNW3oNcQUMz+gdGNF5dNXt4iArpYK5/xktpLxdCM5Yz7SpHoc= # login-url和login-url根据实际情况修改 login-url: http://test1.oinone.top:9095/login logout-url: https://test1.oinone.top:9095/pamirs/sso/logout expires:…

    2025年4月25日
    9500
  • 开放应用中的ip黑白名单

    IP白名单配置 入口:集成应用>开放管理>应用>授权调整>IP白名单配置 IP白名单取请求头中的X-Forwarded-For属性的最后一个值,X-Forwarded-For以英文,分割ip地址。 X-Forwarded-For: clientIP, proxy1IP, proxy2IP, …, proxyNIP 根据 RFC 7239 标准所述,X-Forwarded-For含义如下: clientIP:最左边的 IP,表示最初发起请求的客户端 IP(即真实用户 IP)。 proxyXIP:从左往右依次为中间各级代理服务器的 IP。 最右边的 IP:表示离当前 Web 服务器最近的一层代理服务器(IP白名单拦截的此IP)。 Nginx配置示例 以Nginx为例,为确保X-Forwarded-For拿到的是真实的IP地址,需要增加配置。 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; IP黑名单配置 入口:集成应用>开放管理>应用>黑名单 取值来源:从请求头 X-Real-IP 中提取客户端 IP。 验证逻辑: 若 X-Real-IP 不存在,直接拦截并返回异常提示:未获取到真实IP地址。 检查提取的 IP 是否在阻止列表中。 相关文章 IP黑白名单实现拦截三方用户

    2025年5月15日
    4000
  • 如何实现业务表格跳转页面设计器设计器页面

    后端实现 代理继承界面设计器视图模型 @Model.model(MyView.MODEL_MODEL) @Model(displayName = "视图代理") @Model.Advanced(type = ModelTypeEnum.PROXY) public class MyView extends UiDesignerViewProxy { public static final String MODEL_MODEL = "hr.simple.MyView"; @Field.Integer @Field(displayName = "页面布局ID") private Long uiDesignerViewLayoutId; } 重写查询接口,返回页面布局ID,重写创建接口,实现创建页面逻辑。 package pro.shushi.pamirs.top.core.action; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import pro.shushi.pamirs.boot.base.constants.ViewConstants; import pro.shushi.pamirs.boot.base.enmu.ActionTargetEnum; import pro.shushi.pamirs.boot.base.ux.annotation.action.UxAction; import pro.shushi.pamirs.boot.base.ux.annotation.action.UxRoute; import pro.shushi.pamirs.boot.base.ux.annotation.button.UxRouteButton; import pro.shushi.pamirs.framework.connectors.data.sql.Pops; import pro.shushi.pamirs.framework.connectors.data.sql.query.LambdaQueryWrapper; import pro.shushi.pamirs.meta.annotation.Action; import pro.shushi.pamirs.meta.annotation.Function; import pro.shushi.pamirs.meta.annotation.Model; import pro.shushi.pamirs.meta.api.dto.condition.Pagination; import pro.shushi.pamirs.meta.api.dto.wrapper.IWrapper; import pro.shushi.pamirs.meta.api.session.PamirsSession; import pro.shushi.pamirs.meta.constant.FunctionConstants; import pro.shushi.pamirs.meta.enmu.*; import pro.shushi.pamirs.top.api.model.MyView; import pro.shushi.pamirs.ui.designer.api.designe.UiDesignerViewLayoutService; import pro.shushi.pamirs.ui.designer.model.UiDesignerViewLayout; import pro.shushi.pamirs.ui.designer.pmodel.UiDesignerViewLayoutProxy; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * @author Yexiu at 20:39 on 2025/3/27 */ @Component @Model.model(MyView.MODEL_MODEL) public class MyViewAction { @Autowired private UiDesignerViewLayoutService uiDesignerViewLayoutService; @Action.Advanced(name = FunctionConstants.create, managed = true) @Action(displayName = "创建", summary = "添加", bindingType = ViewTypeEnum.FORM) @Function(name = FunctionConstants.create) @Function.fun(FunctionConstants.create) public MyView create(MyView data) { UiDesignerViewLayoutProxy uiDesignerViewLayoutProxy = new UiDesignerViewLayoutProxy(); uiDesignerViewLayoutProxy.setBizType(data.getBizType()); uiDesignerViewLayoutProxy.setDesignerActionBarType(data.getDesignerActionBarType()); uiDesignerViewLayoutProxy.setViewType(data.getType()); uiDesignerViewLayoutProxy.setModel(data.getModel()); uiDesignerViewLayoutProxy.setModule(PamirsSession.getServApp()); uiDesignerViewLayoutProxy.setViewTitle(data.getTitle()); uiDesignerViewLayoutProxy.setUsingDefaultView(data.getLoadLayout()); UiDesignerViewLayoutProxy saveUiDesigner = uiDesignerViewLayoutService.create(uiDesignerViewLayoutProxy); data.setDesignerViewId(saveUiDesigner.getId()); return data; } @Function.Advanced(type = FunctionTypeEnum.QUERY, displayName = "查询列表") @Function.fun(FunctionConstants.queryPage) @Function(openLevel = {FunctionOpenEnum.API, FunctionOpenEnum.LOCAL}) public Pagination<MyView> queryPage(Pagination<MyView> page, IWrapper<MyView> queryWrapper) { LambdaQueryWrapper<MyView> wrapper = Pops.<MyView>lambdaQuery().from(MyView.MODEL_MODEL) .eq(MyView::getSys, Boolean.FALSE) .eq(MyView::getSystemSource, SystemSourceEnum.UI); Pagination<MyView> myViewPagination = new MyView().queryPage(page, wrapper); List<MyView> content…

    2025年3月31日
    10600
  • 数式Oinone培训前注意事项

    一、快速上手 (建议至少预习 6 小时) 在正式培训之前,建议需要完成以下任务,以便对培训内容有基本了解: 点击阅读:快速启动入门 该文档为学员提供了从入门到实现 demo 的全过程说明,涵盖了开发工具、框架搭建、常见问题解答等内容 开始培训前,请参与人员确保完成以下任务 阅读并理解文档中的每个步骤。 配置好前后端开发环境。 完成 demo 的基础框架搭建,验证是否能够成功运行。 二、预期成果 通过上述预习,大家完成以下事项:• 成功搭建本地开发环境,并能运行前后端的基本 demo。• 对前后端技术栈有初步了解,为正式培训中的深度学习打下基础,并且提出对应的疑问点 三、其他准备工作 1.技术工具检查:请确在本地已安装并配置好必要的开发工具和环境(如 IDE、Node.js、数据库等);2.参与者反馈:在预习过程中,学员如遇到困难或无法解决的问题(前后端疑问),请提前记录并提交,以便培训期间重点解答;3.版本是否是最新的版本,且建议研发人员版本一致,且类型是 mini; ps:部署包相关信息,联系数式相关人员获取

    未分类 2024年8月2日
    2.0K00

Leave a Reply

登录后才能评论