    import WorkFlowServer from './WorkFlowServer'
    import { defaultValue } from '../../../util'
    /**
     * 图层裁剪(sfcls/acls)
     * @class WorkFlowServer600230
     *
     * @extends WorkFlowServer
     * @param {Object} options 构造参数
     * @param {String} [options.url] 工作流基地址,必传
     * @param {String} [options.srcInfo1] 源简单要素类的URL,必传,例如:GDBP://mapgislocal/Sample/sfcls/overLayA
     * @param {String} [options.srcInfo2] 裁剪框简单要素类的URL,必传,例如:GDBP://mapgislocal/Sample/sfcls/overLayB
     * @param {String} [options.src1AttFilter] 源简单要素类过滤条件,例如:mpArea>20000000
     * @param {String} [options.src2AttFilter] 裁剪框简单要素类过滤条件,例如:mpArea>20000000
     * @param {String} [options.desInfo] 结果简单要素类的URL,必传,例如:GDBP://mapgislocal/Sample/sfcls/overLayDes
     * @param {Number} [options.attOptType] 是否进行属性操作,1:是 0:否,必传,例如:{"activeValue":"1","inactiveValue":"0"}
     * @param {Number} [options.infoOptType] 共有部分的图形参数操作,0:随机,1:使用第一个类的图形参数,2:使用第二个类的图形参数,必传,例如:{"0":"随机","1":"使用第一个类的图形参数","2":"使用第二个类的图形参数"}
     * @param {Number} [options.overType] 图层裁剪类型,3:内裁,4:外裁,必传,例如:{"3":"内裁","4":"外裁"}
     * @param {Number} [options.tolerance] 容差半径,必传,例如:0.001
     * @example
        const workFlowServer600230 = WorkFlowServer.createWorkFlow({
            url: "http://localhost:8089/igs/rest/services/workflow/600230/WorkflowServer",
            srcInfo1: "gdbp://MapGISLocalPlus/test/sfcls/农田-gs",
            srcInfo2: "gdbp://MapGISLocalPlus/test/sfcls/林地",
            desInfo: "gdbp://MapGISLocalPlus/test/sfcls/农田-gs-clip",
            attOptType: 1,
            infoOptType: 0,
            overType: 3,
            tolerance: 0.001,
        });
        workFlowServer600230.execute({
            method: Zondy.Enum.FetchMethod.get,
            success: function (res) {
                console.log("execute: ", res);
            },
        });
     */
    class WorkFlowServer600230 extends WorkFlowServer {
      constructor(options) {
        super(options)
        const opt = options || {}
        /**
         * @description 工作流基地址,必传
         * @member {String} WorkFlowServer600230.prototype.url
         * */
        this.url = opt.url
        /**
         * @description 600230
         * @member {Number} WorkFlowServer600230.prototype.flowId
         * @readonly
         * */
        this.flowId = 600230
        /**
         * @description 图层裁剪(sfcls/acls)
         * @member {String} WorkFlowServer600230.prototype.description
         * @readonly
         * */
        this.description = '图层裁剪(sfcls/acls)'
        /**
         * @description 裁剪分析
         * @member {String} WorkFlowServer600230.prototype.groupName
         * @readonly
         * */
        this.groupName = '裁剪分析'
        /**
         * @description 源简单要素类的URL,必传,例如:GDBP://mapgislocal/Sample/sfcls/overLayA
         * @member {String} WorkFlowServer600230.prototype.srcInfo1
         * */
        this.srcInfo1 = opt.srcInfo1
        /**
         * @description 裁剪框简单要素类的URL,必传,例如:GDBP://mapgislocal/Sample/sfcls/overLayB
         * @member {String} WorkFlowServer600230.prototype.srcInfo2
         * */
        this.srcInfo2 = opt.srcInfo2
        /**
         * @description 源简单要素类过滤条件,例如:mpArea>20000000
         * @member {String} WorkFlowServer600230.prototype.src1AttFilter
         * */
        this.src1AttFilter = defaultValue(opt.src1AttFilter, '')
        /**
         * @description 裁剪框简单要素类过滤条件,例如:mpArea>20000000
         * @member {String} WorkFlowServer600230.prototype.src2AttFilter
         * */
        this.src2AttFilter = defaultValue(opt.src2AttFilter, '')
        /**
         * @description 结果简单要素类的URL,必传,例如:GDBP://mapgislocal/Sample/sfcls/overLayDes
         * @member {String} WorkFlowServer600230.prototype.desInfo
         * */
        this.desInfo = opt.desInfo
        /**
         * @description 是否进行属性操作,1:是 0:否,必传,例如:{"activeValue":"1","inactiveValue":"0"}
         * @member {Number} WorkFlowServer600230.prototype.attOptType
         * */
        this.attOptType = opt.attOptType
        /**
         * @description 共有部分的图形参数操作,0:随机,1:使用第一个类的图形参数,2:使用第二个类的图形参数,必传,例如:{"0":"随机","1":"使用第一个类的图形参数","2":"使用第二个类的图形参数"}
         * @member {Number} WorkFlowServer600230.prototype.infoOptType
         * */
        this.infoOptType = opt.infoOptType
        /**
         * @description 图层裁剪类型,3:内裁,4:外裁,必传,例如:{"3":"内裁","4":"外裁"}
         * @member {Number} WorkFlowServer600230.prototype.overType
         * */
        this.overType = opt.overType
        /**
         * @description 容差半径,必传,例如:0.001
         * @member {Number} WorkFlowServer600230.prototype.tolerance
         * */
        this.tolerance = opt.tolerance
      }

      /**
       * @description 获取执行工作流check对象
       * @private
       * @return {Object}
       */
      _getCheckQueryOpts() {
        return {
          srcInfo1: {
            required: true,
            type: 'String'
          },
          srcInfo2: {
            required: true,
            type: 'String'
          },
          src1AttFilter: {
            type: 'String'
          },
          src2AttFilter: {
            type: 'String'
          },
          desInfo: {
            required: true,
            type: 'String'
          },
          attOptType: {
            required: true,
            type: 'Number'
          },
          infoOptType: {
            required: true,
            type: 'Number'
          },
          overType: {
            required: true,
            type: 'Number'
          },
          tolerance: {
            required: true,
            type: 'Number'
          }
        }
      }
    }
    export default WorkFlowServer600230