正在显示
12 个修改的文件
包含
3085 行增加
和
33 行删除
| @@ -6,12 +6,10 @@ WORKDIR $APP_DIR/ | @@ -6,12 +6,10 @@ WORKDIR $APP_DIR/ | ||
| 6 | COPY ./pkg pkg | 6 | COPY ./pkg pkg |
| 7 | COPY ./conf conf | 7 | COPY ./conf conf |
| 8 | COPY ./go.mod go.mod | 8 | COPY ./go.mod go.mod |
| 9 | -COPY ./go.sum go.sum | ||
| 10 | COPY ./main.go main.go | 9 | COPY ./main.go main.go |
| 11 | RUN ["ln","-sf","/usr/share/zoneinfo/Asia/Shanghai","/etc/localtime"] | 10 | RUN ["ln","-sf","/usr/share/zoneinfo/Asia/Shanghai","/etc/localtime"] |
| 12 | ENV GO111MODULE on | 11 | ENV GO111MODULE on |
| 13 | ENV GOPROXY https://goproxy.io | 12 | ENV GOPROXY https://goproxy.io |
| 14 | RUN ["go","mod","tidy"] | 13 | RUN ["go","mod","tidy"] |
| 15 | -RUN ["ls"] | ||
| 16 | RUN ["go","build"] | 14 | RUN ["go","build"] |
| 17 | ENTRYPOINT ["./mmm-worth"] | 15 | ENTRYPOINT ["./mmm-worth"] |
| 1 | #!/bin/bash | 1 | #!/bin/bash |
| 2 | export PATH=/root/local/bin:$PATH | 2 | export PATH=/root/local/bin:$PATH |
| 3 | -kubectl -n <replace-your-k8s-namespace> get pods | grep -q mmm-worth | 3 | +kubectl -n mmm-worth-dev get pods | grep -q mmm-worth |
| 4 | if [ "$?" == "1" ];then | 4 | if [ "$?" == "1" ];then |
| 5 | kubectl create -f /tmp/dev/mmm-worth/mmm-worth.yaml --record | 5 | kubectl create -f /tmp/dev/mmm-worth/mmm-worth.yaml --record |
| 6 | - kubectl -n <replace-your-k8s-namespace> get svc | grep -q mmm-worth | 6 | + kubectl -n mmm-worth-dev get svc | grep -q mmm-worth |
| 7 | if [ "$?" == "0" ];then | 7 | if [ "$?" == "0" ];then |
| 8 | echo "mmm-worth service install success!" | 8 | echo "mmm-worth service install success!" |
| 9 | else | 9 | else |
| 10 | echo "mmm-worth service install fail!" | 10 | echo "mmm-worth service install fail!" |
| 11 | fi | 11 | fi |
| 12 | - kubectl -n <replace-your-k8s-namespace> get pods | grep -q mmm-worth | 12 | + kubectl -n mmm-worth-dev get pods | grep -q mmm-worth |
| 13 | if [ "$?" == "0" ];then | 13 | if [ "$?" == "0" ];then |
| 14 | echo "mmm-worth deployment install success!" | 14 | echo "mmm-worth deployment install success!" |
| 15 | else | 15 | else |
| @@ -17,24 +17,24 @@ if [ "$?" == "1" ];then | @@ -17,24 +17,24 @@ if [ "$?" == "1" ];then | ||
| 17 | fi | 17 | fi |
| 18 | else | 18 | else |
| 19 | kubectl delete -f /tmp/dev/mmm-worth/mmm-worth.yaml | 19 | kubectl delete -f /tmp/dev/mmm-worth/mmm-worth.yaml |
| 20 | - kubectl -n <replace-your-k8s-namespace> get svc | grep -q mmm-worth | 20 | + kubectl -n mmm-worth-dev get svc | grep -q mmm-worth |
| 21 | while [ "$?" == "0" ] | 21 | while [ "$?" == "0" ] |
| 22 | do | 22 | do |
| 23 | - kubectl -n <replace-your-k8s-namespace> get svc | grep -q mmm-worth | 23 | + kubectl -n mmm-worth-dev get svc | grep -q mmm-worth |
| 24 | done | 24 | done |
| 25 | - kubectl -n <replace-your-k8s-namespace> get pods | grep -q mmm-worth | 25 | + kubectl -n mmm-worth-dev get pods | grep -q mmm-worth |
| 26 | while [ "$?" == "0" ] | 26 | while [ "$?" == "0" ] |
| 27 | do | 27 | do |
| 28 | - kubectl -n <replace-your-k8s-namespace> get pods | grep -q mmm-worth | 28 | + kubectl -n mmm-worth-dev get pods | grep -q mmm-worth |
| 29 | done | 29 | done |
| 30 | kubectl create -f /tmp/dev/mmm-worth/mmm-worth.yaml --record | 30 | kubectl create -f /tmp/dev/mmm-worth/mmm-worth.yaml --record |
| 31 | - kubectl -n <replace-your-k8s-namespace> get svc | grep -q mmm-worth | 31 | + kubectl -n mmm-worth-dev get svc | grep -q mmm-worth |
| 32 | if [ "$?" == "0" ];then | 32 | if [ "$?" == "0" ];then |
| 33 | echo "mmm-worth service update success!" | 33 | echo "mmm-worth service update success!" |
| 34 | else | 34 | else |
| 35 | echo "mmm-worth service update fail!" | 35 | echo "mmm-worth service update fail!" |
| 36 | fi | 36 | fi |
| 37 | - kubectl -n <replace-your-k8s-namespace> get pods | grep -q mmm-worth | 37 | + kubectl -n mmm-worth-dev get pods | grep -q mmm-worth |
| 38 | if [ "$?" == "0" ];then | 38 | if [ "$?" == "0" ];then |
| 39 | echo "mmm-worth deployment update success!" | 39 | echo "mmm-worth deployment update success!" |
| 40 | else | 40 | else |
| @@ -2,7 +2,7 @@ apiVersion: v1 | @@ -2,7 +2,7 @@ apiVersion: v1 | ||
| 2 | kind: Service | 2 | kind: Service |
| 3 | metadata: | 3 | metadata: |
| 4 | name: mmm-worth | 4 | name: mmm-worth |
| 5 | - namespace: <replace-your-k8s-namespace> | 5 | + namespace: mmm-worth-dev |
| 6 | labels: | 6 | labels: |
| 7 | k8s-app: mmm-worth | 7 | k8s-app: mmm-worth |
| 8 | spec: | 8 | spec: |
| @@ -17,7 +17,7 @@ apiVersion: extensions/v1beta1 | @@ -17,7 +17,7 @@ apiVersion: extensions/v1beta1 | ||
| 17 | kind: Deployment | 17 | kind: Deployment |
| 18 | metadata: | 18 | metadata: |
| 19 | name: mmm-worth | 19 | name: mmm-worth |
| 20 | - namespace: <replace-your-k8s-namespace> | 20 | + namespace: mmm-worth-dev |
| 21 | labels: | 21 | labels: |
| 22 | k8s-app: mmm-worth | 22 | k8s-app: mmm-worth |
| 23 | spec: | 23 | spec: |
| @@ -52,6 +52,16 @@ spec: | @@ -52,6 +52,16 @@ spec: | ||
| 52 | - mountPath: /opt/logs | 52 | - mountPath: /opt/logs |
| 53 | name: accesslogs | 53 | name: accesslogs |
| 54 | env: | 54 | env: |
| 55 | + - name: POSTGRESQL_DB_NAME | ||
| 56 | + value: "mmm-worth" | ||
| 57 | + - name: POSTGRESQL_USER | ||
| 58 | + value: "postgres" | ||
| 59 | + - name: POSTGRESQL_PASSWORD | ||
| 60 | + value: "postgres_15432" | ||
| 61 | + - name: POSTGRESQL_HOST | ||
| 62 | + value: "101.37.68.23" | ||
| 63 | + - name: POSTGRESQL_PORT | ||
| 64 | + value: "15432" | ||
| 55 | - name: LOG_LEVEL | 65 | - name: LOG_LEVEL |
| 56 | value: "debug" | 66 | value: "debug" |
| 57 | - name: ERROR_BASE_CODE | 67 | - name: ERROR_BASE_CODE |
document/openapi/swagger.json
0 → 100644
| 1 | +{ | ||
| 2 | + "swagger": "2.0", | ||
| 3 | + "info": { | ||
| 4 | + "title": "", | ||
| 5 | + "description": "买买买价值系统", | ||
| 6 | + "contact": { | ||
| 7 | + "name": "linmadan", | ||
| 8 | + "email": "772181827@qq.com" | ||
| 9 | + }, | ||
| 10 | + "version": "0.0.1" | ||
| 11 | + }, | ||
| 12 | + "consumes": [ | ||
| 13 | + "application/json", | ||
| 14 | + "application/xml" | ||
| 15 | + ], | ||
| 16 | + "produces": [ | ||
| 17 | + "application/json", | ||
| 18 | + "application/xml" | ||
| 19 | + ], | ||
| 20 | + "paths": { | ||
| 21 | + "/employees": { | ||
| 22 | + "get": { | ||
| 23 | + "tags": [ | ||
| 24 | + "employee" | ||
| 25 | + ], | ||
| 26 | + "summary": "返回员工列表", | ||
| 27 | + "description": "返回员工列表", | ||
| 28 | + "operationId": "employee#listEmployee", | ||
| 29 | + "parameters": [ | ||
| 30 | + { | ||
| 31 | + "name": "offset", | ||
| 32 | + "in": "query", | ||
| 33 | + "description": "查询偏离量", | ||
| 34 | + "required": false, | ||
| 35 | + "type": "integer" | ||
| 36 | + }, | ||
| 37 | + { | ||
| 38 | + "name": "limit", | ||
| 39 | + "in": "query", | ||
| 40 | + "description": "查询限制", | ||
| 41 | + "required": false, | ||
| 42 | + "type": "integer" | ||
| 43 | + } | ||
| 44 | + ], | ||
| 45 | + "responses": { | ||
| 46 | + "200": { | ||
| 47 | + "description": "OK response.", | ||
| 48 | + "schema": { | ||
| 49 | + "$ref": "#/definitions/EmployeeListEmployeeResponseBody" | ||
| 50 | + } | ||
| 51 | + } | ||
| 52 | + }, | ||
| 53 | + "schemes": [ | ||
| 54 | + "http" | ||
| 55 | + ] | ||
| 56 | + }, | ||
| 57 | + "post": { | ||
| 58 | + "tags": [ | ||
| 59 | + "employee" | ||
| 60 | + ], | ||
| 61 | + "summary": "创建新员工", | ||
| 62 | + "description": "创建新员工", | ||
| 63 | + "operationId": "employee#createEmployee", | ||
| 64 | + "parameters": [ | ||
| 65 | + { | ||
| 66 | + "name": "CreateEmployeeRequestBody", | ||
| 67 | + "in": "body", | ||
| 68 | + "required": true, | ||
| 69 | + "schema": { | ||
| 70 | + "$ref": "#/definitions/EmployeeCreateEmployeeRequestBody" | ||
| 71 | + } | ||
| 72 | + } | ||
| 73 | + ], | ||
| 74 | + "responses": { | ||
| 75 | + "200": { | ||
| 76 | + "description": "OK response.", | ||
| 77 | + "schema": { | ||
| 78 | + "$ref": "#/definitions/EmployeeCreateEmployeeResponseBody" | ||
| 79 | + } | ||
| 80 | + } | ||
| 81 | + }, | ||
| 82 | + "schemes": [ | ||
| 83 | + "http" | ||
| 84 | + ] | ||
| 85 | + } | ||
| 86 | + }, | ||
| 87 | + "/employees/{uid}": { | ||
| 88 | + "get": { | ||
| 89 | + "tags": [ | ||
| 90 | + "employee" | ||
| 91 | + ], | ||
| 92 | + "summary": "返回员工", | ||
| 93 | + "description": "返回员工", | ||
| 94 | + "operationId": "employee#getEmployee", | ||
| 95 | + "parameters": [ | ||
| 96 | + { | ||
| 97 | + "name": "uid", | ||
| 98 | + "in": "path", | ||
| 99 | + "description": "统一用户UID", | ||
| 100 | + "required": true, | ||
| 101 | + "type": "integer" | ||
| 102 | + } | ||
| 103 | + ], | ||
| 104 | + "responses": { | ||
| 105 | + "200": { | ||
| 106 | + "description": "OK response.", | ||
| 107 | + "schema": { | ||
| 108 | + "$ref": "#/definitions/EmployeeGetEmployeeResponseBody" | ||
| 109 | + } | ||
| 110 | + } | ||
| 111 | + }, | ||
| 112 | + "schemes": [ | ||
| 113 | + "http" | ||
| 114 | + ] | ||
| 115 | + }, | ||
| 116 | + "put": { | ||
| 117 | + "tags": [ | ||
| 118 | + "employee" | ||
| 119 | + ], | ||
| 120 | + "summary": "更新员工", | ||
| 121 | + "description": "更新员工", | ||
| 122 | + "operationId": "employee#updateEmployee", | ||
| 123 | + "parameters": [ | ||
| 124 | + { | ||
| 125 | + "name": "uid", | ||
| 126 | + "in": "path", | ||
| 127 | + "description": "统一用户UID", | ||
| 128 | + "required": true, | ||
| 129 | + "type": "integer" | ||
| 130 | + }, | ||
| 131 | + { | ||
| 132 | + "name": "UpdateEmployeeRequestBody", | ||
| 133 | + "in": "body", | ||
| 134 | + "required": true, | ||
| 135 | + "schema": { | ||
| 136 | + "$ref": "#/definitions/EmployeeUpdateEmployeeRequestBody" | ||
| 137 | + } | ||
| 138 | + } | ||
| 139 | + ], | ||
| 140 | + "responses": { | ||
| 141 | + "200": { | ||
| 142 | + "description": "OK response.", | ||
| 143 | + "schema": { | ||
| 144 | + "$ref": "#/definitions/EmployeeUpdateEmployeeResponseBody" | ||
| 145 | + } | ||
| 146 | + } | ||
| 147 | + }, | ||
| 148 | + "schemes": [ | ||
| 149 | + "http" | ||
| 150 | + ] | ||
| 151 | + }, | ||
| 152 | + "delete": { | ||
| 153 | + "tags": [ | ||
| 154 | + "employee" | ||
| 155 | + ], | ||
| 156 | + "summary": "移除员工", | ||
| 157 | + "description": "移除员工", | ||
| 158 | + "operationId": "employee#removeEmployee", | ||
| 159 | + "parameters": [ | ||
| 160 | + { | ||
| 161 | + "name": "uid", | ||
| 162 | + "in": "path", | ||
| 163 | + "description": "统一用户UID", | ||
| 164 | + "required": true, | ||
| 165 | + "type": "integer" | ||
| 166 | + } | ||
| 167 | + ], | ||
| 168 | + "responses": { | ||
| 169 | + "200": { | ||
| 170 | + "description": "OK response.", | ||
| 171 | + "schema": { | ||
| 172 | + "$ref": "#/definitions/EmployeeRemoveEmployeeResponseBody" | ||
| 173 | + } | ||
| 174 | + } | ||
| 175 | + }, | ||
| 176 | + "schemes": [ | ||
| 177 | + "http" | ||
| 178 | + ] | ||
| 179 | + } | ||
| 180 | + }, | ||
| 181 | + "/tasks": { | ||
| 182 | + "get": { | ||
| 183 | + "tags": [ | ||
| 184 | + "task" | ||
| 185 | + ], | ||
| 186 | + "summary": "返回任务列表", | ||
| 187 | + "description": "返回任务列表", | ||
| 188 | + "operationId": "task#listTask", | ||
| 189 | + "parameters": [ | ||
| 190 | + { | ||
| 191 | + "name": "companyId", | ||
| 192 | + "in": "query", | ||
| 193 | + "description": "公司ID", | ||
| 194 | + "required": false, | ||
| 195 | + "type": "integer" | ||
| 196 | + }, | ||
| 197 | + { | ||
| 198 | + "name": "sponsor", | ||
| 199 | + "in": "query", | ||
| 200 | + "description": "任务发起者", | ||
| 201 | + "required": false, | ||
| 202 | + "type": "integer", | ||
| 203 | + "format": "int64" | ||
| 204 | + }, | ||
| 205 | + { | ||
| 206 | + "name": "taskContentMatch", | ||
| 207 | + "in": "query", | ||
| 208 | + "description": "任务内容匹配", | ||
| 209 | + "required": false, | ||
| 210 | + "type": "string" | ||
| 211 | + }, | ||
| 212 | + { | ||
| 213 | + "name": "taskType", | ||
| 214 | + "in": "query", | ||
| 215 | + "description": "任务类型", | ||
| 216 | + "required": false, | ||
| 217 | + "type": "integer" | ||
| 218 | + }, | ||
| 219 | + { | ||
| 220 | + "name": "taskStatus", | ||
| 221 | + "in": "query", | ||
| 222 | + "description": "任务状态", | ||
| 223 | + "required": false, | ||
| 224 | + "type": "integer" | ||
| 225 | + }, | ||
| 226 | + { | ||
| 227 | + "name": "customerValue", | ||
| 228 | + "in": "query", | ||
| 229 | + "description": "客户价值", | ||
| 230 | + "required": false, | ||
| 231 | + "type": "string" | ||
| 232 | + }, | ||
| 233 | + { | ||
| 234 | + "name": "taskNature", | ||
| 235 | + "in": "query", | ||
| 236 | + "description": "任务性质", | ||
| 237 | + "required": false, | ||
| 238 | + "type": "string" | ||
| 239 | + }, | ||
| 240 | + { | ||
| 241 | + "name": "isRewardTake", | ||
| 242 | + "in": "query", | ||
| 243 | + "description": "是否悬赏任务", | ||
| 244 | + "required": false, | ||
| 245 | + "type": "boolean" | ||
| 246 | + }, | ||
| 247 | + { | ||
| 248 | + "name": "bidTimeMatch", | ||
| 249 | + "in": "query", | ||
| 250 | + "description": "竞标时间(1全部,2已截止,3未截止)", | ||
| 251 | + "required": false, | ||
| 252 | + "type": "integer" | ||
| 253 | + }, | ||
| 254 | + { | ||
| 255 | + "name": "receiver", | ||
| 256 | + "in": "query", | ||
| 257 | + "description": "任务领取人", | ||
| 258 | + "required": false, | ||
| 259 | + "type": "integer", | ||
| 260 | + "format": "int64" | ||
| 261 | + }, | ||
| 262 | + { | ||
| 263 | + "name": "participator", | ||
| 264 | + "in": "query", | ||
| 265 | + "description": "任务参与者", | ||
| 266 | + "required": false, | ||
| 267 | + "type": "integer", | ||
| 268 | + "format": "int64" | ||
| 269 | + }, | ||
| 270 | + { | ||
| 271 | + "name": "offset", | ||
| 272 | + "in": "query", | ||
| 273 | + "description": "查询偏离量", | ||
| 274 | + "required": false, | ||
| 275 | + "type": "integer" | ||
| 276 | + }, | ||
| 277 | + { | ||
| 278 | + "name": "limit", | ||
| 279 | + "in": "query", | ||
| 280 | + "description": "查询限制", | ||
| 281 | + "required": false, | ||
| 282 | + "type": "integer" | ||
| 283 | + } | ||
| 284 | + ], | ||
| 285 | + "responses": { | ||
| 286 | + "200": { | ||
| 287 | + "description": "OK response.", | ||
| 288 | + "schema": { | ||
| 289 | + "$ref": "#/definitions/TaskListTaskResponseBody" | ||
| 290 | + } | ||
| 291 | + } | ||
| 292 | + }, | ||
| 293 | + "schemes": [ | ||
| 294 | + "http" | ||
| 295 | + ] | ||
| 296 | + }, | ||
| 297 | + "post": { | ||
| 298 | + "tags": [ | ||
| 299 | + "task" | ||
| 300 | + ], | ||
| 301 | + "summary": "创建新任务", | ||
| 302 | + "description": "创建新任务", | ||
| 303 | + "operationId": "task#createTask", | ||
| 304 | + "parameters": [ | ||
| 305 | + { | ||
| 306 | + "name": "CreateTaskRequestBody", | ||
| 307 | + "in": "body", | ||
| 308 | + "required": true, | ||
| 309 | + "schema": { | ||
| 310 | + "$ref": "#/definitions/TaskCreateTaskRequestBody" | ||
| 311 | + } | ||
| 312 | + } | ||
| 313 | + ], | ||
| 314 | + "responses": { | ||
| 315 | + "200": { | ||
| 316 | + "description": "OK response.", | ||
| 317 | + "schema": { | ||
| 318 | + "$ref": "#/definitions/TaskCreateTaskResponseBody" | ||
| 319 | + } | ||
| 320 | + } | ||
| 321 | + }, | ||
| 322 | + "schemes": [ | ||
| 323 | + "http" | ||
| 324 | + ] | ||
| 325 | + } | ||
| 326 | + }, | ||
| 327 | + "/tasks/{taskId}": { | ||
| 328 | + "get": { | ||
| 329 | + "tags": [ | ||
| 330 | + "task" | ||
| 331 | + ], | ||
| 332 | + "summary": "返回任务", | ||
| 333 | + "description": "返回任务", | ||
| 334 | + "operationId": "task#getTask", | ||
| 335 | + "parameters": [ | ||
| 336 | + { | ||
| 337 | + "name": "taskId", | ||
| 338 | + "in": "path", | ||
| 339 | + "description": "任务ID", | ||
| 340 | + "required": true, | ||
| 341 | + "type": "integer" | ||
| 342 | + } | ||
| 343 | + ], | ||
| 344 | + "responses": { | ||
| 345 | + "200": { | ||
| 346 | + "description": "OK response.", | ||
| 347 | + "schema": { | ||
| 348 | + "$ref": "#/definitions/TaskGetTaskResponseBody" | ||
| 349 | + } | ||
| 350 | + } | ||
| 351 | + }, | ||
| 352 | + "schemes": [ | ||
| 353 | + "http" | ||
| 354 | + ] | ||
| 355 | + }, | ||
| 356 | + "put": { | ||
| 357 | + "tags": [ | ||
| 358 | + "task" | ||
| 359 | + ], | ||
| 360 | + "summary": "更新任务", | ||
| 361 | + "description": "更新任务", | ||
| 362 | + "operationId": "task#updateTask", | ||
| 363 | + "parameters": [ | ||
| 364 | + { | ||
| 365 | + "name": "taskId", | ||
| 366 | + "in": "path", | ||
| 367 | + "description": "任务ID", | ||
| 368 | + "required": true, | ||
| 369 | + "type": "integer" | ||
| 370 | + }, | ||
| 371 | + { | ||
| 372 | + "name": "UpdateTaskRequestBody", | ||
| 373 | + "in": "body", | ||
| 374 | + "required": true, | ||
| 375 | + "schema": { | ||
| 376 | + "$ref": "#/definitions/TaskUpdateTaskRequestBody" | ||
| 377 | + } | ||
| 378 | + } | ||
| 379 | + ], | ||
| 380 | + "responses": { | ||
| 381 | + "200": { | ||
| 382 | + "description": "OK response.", | ||
| 383 | + "schema": { | ||
| 384 | + "$ref": "#/definitions/TaskUpdateTaskResponseBody" | ||
| 385 | + } | ||
| 386 | + } | ||
| 387 | + }, | ||
| 388 | + "schemes": [ | ||
| 389 | + "http" | ||
| 390 | + ] | ||
| 391 | + }, | ||
| 392 | + "delete": { | ||
| 393 | + "tags": [ | ||
| 394 | + "task" | ||
| 395 | + ], | ||
| 396 | + "summary": "移除任务", | ||
| 397 | + "description": "移除任务", | ||
| 398 | + "operationId": "task#removeTask", | ||
| 399 | + "parameters": [ | ||
| 400 | + { | ||
| 401 | + "name": "taskId", | ||
| 402 | + "in": "path", | ||
| 403 | + "description": "任务ID", | ||
| 404 | + "required": true, | ||
| 405 | + "type": "integer" | ||
| 406 | + } | ||
| 407 | + ], | ||
| 408 | + "responses": { | ||
| 409 | + "200": { | ||
| 410 | + "description": "OK response.", | ||
| 411 | + "schema": { | ||
| 412 | + "$ref": "#/definitions/TaskRemoveTaskResponseBody" | ||
| 413 | + } | ||
| 414 | + } | ||
| 415 | + }, | ||
| 416 | + "schemes": [ | ||
| 417 | + "http" | ||
| 418 | + ] | ||
| 419 | + } | ||
| 420 | + }, | ||
| 421 | + "/tasks/{taskId}/acceptance": { | ||
| 422 | + "post": { | ||
| 423 | + "tags": [ | ||
| 424 | + "task" | ||
| 425 | + ], | ||
| 426 | + "summary": "验收任务", | ||
| 427 | + "description": "验收任务", | ||
| 428 | + "operationId": "task#acceptanceTask", | ||
| 429 | + "parameters": [ | ||
| 430 | + { | ||
| 431 | + "name": "taskId", | ||
| 432 | + "in": "path", | ||
| 433 | + "description": "任务ID", | ||
| 434 | + "required": true, | ||
| 435 | + "type": "integer" | ||
| 436 | + }, | ||
| 437 | + { | ||
| 438 | + "name": "AcceptanceTaskRequestBody", | ||
| 439 | + "in": "body", | ||
| 440 | + "required": true, | ||
| 441 | + "schema": { | ||
| 442 | + "$ref": "#/definitions/TaskAcceptanceTaskRequestBody" | ||
| 443 | + } | ||
| 444 | + } | ||
| 445 | + ], | ||
| 446 | + "responses": { | ||
| 447 | + "200": { | ||
| 448 | + "description": "OK response.", | ||
| 449 | + "schema": { | ||
| 450 | + "$ref": "#/definitions/TaskAcceptanceTaskResponseBody" | ||
| 451 | + } | ||
| 452 | + } | ||
| 453 | + }, | ||
| 454 | + "schemes": [ | ||
| 455 | + "http" | ||
| 456 | + ] | ||
| 457 | + } | ||
| 458 | + }, | ||
| 459 | + "/tasks/{taskId}/apply-complete": { | ||
| 460 | + "post": { | ||
| 461 | + "tags": [ | ||
| 462 | + "task" | ||
| 463 | + ], | ||
| 464 | + "summary": "申请完成任务", | ||
| 465 | + "description": "申请完成任务", | ||
| 466 | + "operationId": "task#applyCompleteTask", | ||
| 467 | + "parameters": [ | ||
| 468 | + { | ||
| 469 | + "name": "taskId", | ||
| 470 | + "in": "path", | ||
| 471 | + "description": "任务ID", | ||
| 472 | + "required": true, | ||
| 473 | + "type": "integer" | ||
| 474 | + }, | ||
| 475 | + { | ||
| 476 | + "name": "ApplyCompleteTaskRequestBody", | ||
| 477 | + "in": "body", | ||
| 478 | + "required": true, | ||
| 479 | + "schema": { | ||
| 480 | + "$ref": "#/definitions/TaskApplyCompleteTaskRequestBody" | ||
| 481 | + } | ||
| 482 | + } | ||
| 483 | + ], | ||
| 484 | + "responses": { | ||
| 485 | + "200": { | ||
| 486 | + "description": "OK response.", | ||
| 487 | + "schema": { | ||
| 488 | + "$ref": "#/definitions/TaskApplyCompleteTaskResponseBody" | ||
| 489 | + } | ||
| 490 | + } | ||
| 491 | + }, | ||
| 492 | + "schemes": [ | ||
| 493 | + "http" | ||
| 494 | + ] | ||
| 495 | + } | ||
| 496 | + }, | ||
| 497 | + "/tasks/{taskId}/bid": { | ||
| 498 | + "post": { | ||
| 499 | + "tags": [ | ||
| 500 | + "task" | ||
| 501 | + ], | ||
| 502 | + "summary": "对任务进行竞标", | ||
| 503 | + "description": "对任务进行竞标", | ||
| 504 | + "operationId": "task#bidTask", | ||
| 505 | + "parameters": [ | ||
| 506 | + { | ||
| 507 | + "name": "taskId", | ||
| 508 | + "in": "path", | ||
| 509 | + "description": "任务ID", | ||
| 510 | + "required": true, | ||
| 511 | + "type": "integer" | ||
| 512 | + }, | ||
| 513 | + { | ||
| 514 | + "name": "BidTaskRequestBody", | ||
| 515 | + "in": "body", | ||
| 516 | + "required": true, | ||
| 517 | + "schema": { | ||
| 518 | + "$ref": "#/definitions/TaskBidTaskRequestBody" | ||
| 519 | + } | ||
| 520 | + } | ||
| 521 | + ], | ||
| 522 | + "responses": { | ||
| 523 | + "200": { | ||
| 524 | + "description": "OK response.", | ||
| 525 | + "schema": { | ||
| 526 | + "$ref": "#/definitions/TaskBidTaskResponseBody" | ||
| 527 | + } | ||
| 528 | + } | ||
| 529 | + }, | ||
| 530 | + "schemes": [ | ||
| 531 | + "http" | ||
| 532 | + ] | ||
| 533 | + } | ||
| 534 | + }, | ||
| 535 | + "/tasks/{taskId}/choose-successful-bidder": { | ||
| 536 | + "post": { | ||
| 537 | + "tags": [ | ||
| 538 | + "task" | ||
| 539 | + ], | ||
| 540 | + "summary": "选择竞标任务的中标人", | ||
| 541 | + "description": "选择竞标任务的中标人", | ||
| 542 | + "operationId": "task#chooseSuccessfulBidder", | ||
| 543 | + "parameters": [ | ||
| 544 | + { | ||
| 545 | + "name": "taskId", | ||
| 546 | + "in": "path", | ||
| 547 | + "description": "任务ID", | ||
| 548 | + "required": true, | ||
| 549 | + "type": "integer" | ||
| 550 | + }, | ||
| 551 | + { | ||
| 552 | + "name": "ChooseSuccessfulBidderRequestBody", | ||
| 553 | + "in": "body", | ||
| 554 | + "required": true, | ||
| 555 | + "schema": { | ||
| 556 | + "$ref": "#/definitions/TaskChooseSuccessfulBidderRequestBody" | ||
| 557 | + } | ||
| 558 | + } | ||
| 559 | + ], | ||
| 560 | + "responses": { | ||
| 561 | + "200": { | ||
| 562 | + "description": "OK response.", | ||
| 563 | + "schema": { | ||
| 564 | + "$ref": "#/definitions/TaskChooseSuccessfulBidderResponseBody" | ||
| 565 | + } | ||
| 566 | + } | ||
| 567 | + }, | ||
| 568 | + "schemes": [ | ||
| 569 | + "http" | ||
| 570 | + ] | ||
| 571 | + } | ||
| 572 | + }, | ||
| 573 | + "/tasks/{taskId}/dff": { | ||
| 574 | + "post": { | ||
| 575 | + "tags": [ | ||
| 576 | + "task" | ||
| 577 | + ], | ||
| 578 | + "summary": "关闭任务", | ||
| 579 | + "description": "关闭任务", | ||
| 580 | + "operationId": "task#offTask", | ||
| 581 | + "parameters": [ | ||
| 582 | + { | ||
| 583 | + "name": "taskId", | ||
| 584 | + "in": "path", | ||
| 585 | + "description": "任务ID", | ||
| 586 | + "required": true, | ||
| 587 | + "type": "integer" | ||
| 588 | + }, | ||
| 589 | + { | ||
| 590 | + "name": "OffTaskRequestBody", | ||
| 591 | + "in": "body", | ||
| 592 | + "required": true, | ||
| 593 | + "schema": { | ||
| 594 | + "$ref": "#/definitions/TaskOffTaskRequestBody" | ||
| 595 | + } | ||
| 596 | + } | ||
| 597 | + ], | ||
| 598 | + "responses": { | ||
| 599 | + "200": { | ||
| 600 | + "description": "OK response.", | ||
| 601 | + "schema": { | ||
| 602 | + "$ref": "#/definitions/TaskOffTaskResponseBody" | ||
| 603 | + } | ||
| 604 | + } | ||
| 605 | + }, | ||
| 606 | + "schemes": [ | ||
| 607 | + "http" | ||
| 608 | + ] | ||
| 609 | + } | ||
| 610 | + }, | ||
| 611 | + "/tasks/{taskId}/release": { | ||
| 612 | + "post": { | ||
| 613 | + "tags": [ | ||
| 614 | + "task" | ||
| 615 | + ], | ||
| 616 | + "summary": "发布任务", | ||
| 617 | + "description": "发布任务", | ||
| 618 | + "operationId": "task#releaseTask", | ||
| 619 | + "parameters": [ | ||
| 620 | + { | ||
| 621 | + "name": "taskId", | ||
| 622 | + "in": "path", | ||
| 623 | + "description": "任务ID", | ||
| 624 | + "required": true, | ||
| 625 | + "type": "integer" | ||
| 626 | + }, | ||
| 627 | + { | ||
| 628 | + "name": "ReleaseTaskRequestBody", | ||
| 629 | + "in": "body", | ||
| 630 | + "required": true, | ||
| 631 | + "schema": { | ||
| 632 | + "$ref": "#/definitions/TaskReleaseTaskRequestBody" | ||
| 633 | + } | ||
| 634 | + } | ||
| 635 | + ], | ||
| 636 | + "responses": { | ||
| 637 | + "200": { | ||
| 638 | + "description": "OK response.", | ||
| 639 | + "schema": { | ||
| 640 | + "$ref": "#/definitions/TaskReleaseTaskResponseBody" | ||
| 641 | + } | ||
| 642 | + } | ||
| 643 | + }, | ||
| 644 | + "schemes": [ | ||
| 645 | + "http" | ||
| 646 | + ] | ||
| 647 | + } | ||
| 648 | + }, | ||
| 649 | + "/tasks/{taskId}/rob": { | ||
| 650 | + "post": { | ||
| 651 | + "tags": [ | ||
| 652 | + "task" | ||
| 653 | + ], | ||
| 654 | + "summary": "对任务进行抢单", | ||
| 655 | + "description": "对任务进行抢单", | ||
| 656 | + "operationId": "task#robTask", | ||
| 657 | + "parameters": [ | ||
| 658 | + { | ||
| 659 | + "name": "taskId", | ||
| 660 | + "in": "path", | ||
| 661 | + "description": "任务ID", | ||
| 662 | + "required": true, | ||
| 663 | + "type": "integer" | ||
| 664 | + }, | ||
| 665 | + { | ||
| 666 | + "name": "RobTaskRequestBody", | ||
| 667 | + "in": "body", | ||
| 668 | + "required": true, | ||
| 669 | + "schema": { | ||
| 670 | + "$ref": "#/definitions/TaskRobTaskRequestBody" | ||
| 671 | + } | ||
| 672 | + } | ||
| 673 | + ], | ||
| 674 | + "responses": { | ||
| 675 | + "200": { | ||
| 676 | + "description": "OK response.", | ||
| 677 | + "schema": { | ||
| 678 | + "$ref": "#/definitions/TaskRobTaskResponseBody" | ||
| 679 | + } | ||
| 680 | + } | ||
| 681 | + }, | ||
| 682 | + "schemes": [ | ||
| 683 | + "http" | ||
| 684 | + ] | ||
| 685 | + } | ||
| 686 | + }, | ||
| 687 | + "/tasks/search": { | ||
| 688 | + "post": { | ||
| 689 | + "tags": [ | ||
| 690 | + "task" | ||
| 691 | + ], | ||
| 692 | + "summary": "搜索任务", | ||
| 693 | + "description": "搜索任务", | ||
| 694 | + "operationId": "task#searchTask", | ||
| 695 | + "parameters": [ | ||
| 696 | + { | ||
| 697 | + "name": "SearchTaskRequestBody", | ||
| 698 | + "in": "body", | ||
| 699 | + "required": true, | ||
| 700 | + "schema": { | ||
| 701 | + "$ref": "#/definitions/TaskSearchTaskRequestBody" | ||
| 702 | + } | ||
| 703 | + } | ||
| 704 | + ], | ||
| 705 | + "responses": { | ||
| 706 | + "200": { | ||
| 707 | + "description": "OK response.", | ||
| 708 | + "schema": { | ||
| 709 | + "$ref": "#/definitions/TaskSearchTaskResponseBody" | ||
| 710 | + } | ||
| 711 | + } | ||
| 712 | + }, | ||
| 713 | + "schemes": [ | ||
| 714 | + "http" | ||
| 715 | + ] | ||
| 716 | + } | ||
| 717 | + } | ||
| 718 | + }, | ||
| 719 | + "definitions": { | ||
| 720 | + "EmployeeCreateEmployeeRequestBody": { | ||
| 721 | + "title": "EmployeeCreateEmployeeRequestBody", | ||
| 722 | + "type": "object", | ||
| 723 | + "properties": { | ||
| 724 | + "employeeAccount": { | ||
| 725 | + "type": "string", | ||
| 726 | + "description": "员工账号" | ||
| 727 | + }, | ||
| 728 | + "employeeName": { | ||
| 729 | + "type": "string", | ||
| 730 | + "description": "员工姓名" | ||
| 731 | + }, | ||
| 732 | + "uid": { | ||
| 733 | + "type": "integer", | ||
| 734 | + "description": "统一用户UID", | ||
| 735 | + "required": [ | ||
| 736 | + "uid" | ||
| 737 | + ] | ||
| 738 | + } | ||
| 739 | + } | ||
| 740 | + }, | ||
| 741 | + "EmployeeCreateEmployeeResponseBody": { | ||
| 742 | + "title": "Mediatype identifier: EmployeeCreateEmployeeResponseBody", | ||
| 743 | + "type": "object", | ||
| 744 | + "properties": { | ||
| 745 | + "employee": { | ||
| 746 | + "$ref": "#/definitions/employeeResponseBody" | ||
| 747 | + } | ||
| 748 | + } | ||
| 749 | + }, | ||
| 750 | + "EmployeeGetEmployeeResponseBody": { | ||
| 751 | + "title": "Mediatype identifier: EmployeeGetEmployeeResponseBody", | ||
| 752 | + "type": "object", | ||
| 753 | + "properties": { | ||
| 754 | + "employee": { | ||
| 755 | + "$ref": "#/definitions/employeeResponseBody" | ||
| 756 | + } | ||
| 757 | + } | ||
| 758 | + }, | ||
| 759 | + "EmployeeListEmployeeResponseBody": { | ||
| 760 | + "title": "Mediatype identifier: EmployeeListEmployeeResponseBody", | ||
| 761 | + "type": "object", | ||
| 762 | + "properties": { | ||
| 763 | + "count": { | ||
| 764 | + "type": "integer", | ||
| 765 | + "description": "结果总数", | ||
| 766 | + "format": "int64" | ||
| 767 | + }, | ||
| 768 | + "employees": { | ||
| 769 | + "type": "array", | ||
| 770 | + "items": { | ||
| 771 | + "$ref": "#/definitions/employeeResponseBody" | ||
| 772 | + } | ||
| 773 | + } | ||
| 774 | + } | ||
| 775 | + }, | ||
| 776 | + "EmployeeRemoveEmployeeResponseBody": { | ||
| 777 | + "title": "Mediatype identifier: EmployeeRemoveEmployeeResponseBody", | ||
| 778 | + "type": "object", | ||
| 779 | + "properties": { | ||
| 780 | + "employee": { | ||
| 781 | + "$ref": "#/definitions/employeeResponseBody" | ||
| 782 | + } | ||
| 783 | + } | ||
| 784 | + }, | ||
| 785 | + "EmployeeUpdateEmployeeRequestBody": { | ||
| 786 | + "title": "EmployeeUpdateEmployeeRequestBody", | ||
| 787 | + "type": "object", | ||
| 788 | + "properties": { | ||
| 789 | + "employeeAccount": { | ||
| 790 | + "type": "string", | ||
| 791 | + "description": "员工账号" | ||
| 792 | + }, | ||
| 793 | + "employeeName": { | ||
| 794 | + "type": "string", | ||
| 795 | + "description": "员工姓名" | ||
| 796 | + } | ||
| 797 | + } | ||
| 798 | + }, | ||
| 799 | + "EmployeeUpdateEmployeeResponseBody": { | ||
| 800 | + "title": "Mediatype identifier: EmployeeUpdateEmployeeResponseBody", | ||
| 801 | + "type": "object", | ||
| 802 | + "properties": { | ||
| 803 | + "employee": { | ||
| 804 | + "$ref": "#/definitions/employeeResponseBody" | ||
| 805 | + } | ||
| 806 | + } | ||
| 807 | + }, | ||
| 808 | + "TaskAcceptanceTaskRequestBody": { | ||
| 809 | + "title": "TaskAcceptanceTaskRequestBody", | ||
| 810 | + "type": "object", | ||
| 811 | + "properties": { | ||
| 812 | + "operator": { | ||
| 813 | + "type": "integer", | ||
| 814 | + "description": "操作人uid", | ||
| 815 | + "required": [ | ||
| 816 | + "operator" | ||
| 817 | + ] | ||
| 818 | + }, | ||
| 819 | + "participators": { | ||
| 820 | + "type": "array", | ||
| 821 | + "items": { | ||
| 822 | + "type": "integer", | ||
| 823 | + "format": "int64" | ||
| 824 | + }, | ||
| 825 | + "description": "任务参与者UID列表" | ||
| 826 | + }, | ||
| 827 | + "solvePictureUrls": { | ||
| 828 | + "type": "array", | ||
| 829 | + "items": { | ||
| 830 | + "type": "string" | ||
| 831 | + }, | ||
| 832 | + "description": "解决图片URL列表" | ||
| 833 | + }, | ||
| 834 | + "solveReport": { | ||
| 835 | + "type": "string", | ||
| 836 | + "description": "解决报告" | ||
| 837 | + }, | ||
| 838 | + "taskPercentage": { | ||
| 839 | + "type": "array", | ||
| 840 | + "items": { | ||
| 841 | + "$ref": "#/definitions/taskPercentageItemRequestBody" | ||
| 842 | + }, | ||
| 843 | + "description": "任务贡献占比", | ||
| 844 | + "required": [ | ||
| 845 | + "taskPercentage" | ||
| 846 | + ] | ||
| 847 | + } | ||
| 848 | + } | ||
| 849 | + }, | ||
| 850 | + "TaskAcceptanceTaskResponseBody": { | ||
| 851 | + "title": "Mediatype identifier: TaskAcceptanceTaskResponseBody", | ||
| 852 | + "type": "object", | ||
| 853 | + "properties": { | ||
| 854 | + "task": { | ||
| 855 | + "$ref": "#/definitions/taskResponseBody" | ||
| 856 | + } | ||
| 857 | + } | ||
| 858 | + }, | ||
| 859 | + "TaskApplyCompleteTaskRequestBody": { | ||
| 860 | + "title": "TaskApplyCompleteTaskRequestBody", | ||
| 861 | + "type": "object", | ||
| 862 | + "properties": { | ||
| 863 | + "receiver": { | ||
| 864 | + "type": "integer", | ||
| 865 | + "description": "领取人或者中标人uid", | ||
| 866 | + "required": [ | ||
| 867 | + "receiver" | ||
| 868 | + ] | ||
| 869 | + } | ||
| 870 | + } | ||
| 871 | + }, | ||
| 872 | + "TaskApplyCompleteTaskResponseBody": { | ||
| 873 | + "title": "Mediatype identifier: TaskApplyCompleteTaskResponseBody", | ||
| 874 | + "type": "object", | ||
| 875 | + "properties": { | ||
| 876 | + "task": { | ||
| 877 | + "$ref": "#/definitions/taskResponseBody" | ||
| 878 | + } | ||
| 879 | + } | ||
| 880 | + }, | ||
| 881 | + "TaskBidTaskRequestBody": { | ||
| 882 | + "title": "TaskBidTaskRequestBody", | ||
| 883 | + "type": "object", | ||
| 884 | + "properties": { | ||
| 885 | + "bidder": { | ||
| 886 | + "type": "integer", | ||
| 887 | + "description": "竞标人uid", | ||
| 888 | + "required": [ | ||
| 889 | + "bidder" | ||
| 890 | + ] | ||
| 891 | + } | ||
| 892 | + } | ||
| 893 | + }, | ||
| 894 | + "TaskBidTaskResponseBody": { | ||
| 895 | + "title": "Mediatype identifier: TaskBidTaskResponseBody", | ||
| 896 | + "type": "object", | ||
| 897 | + "properties": { | ||
| 898 | + "task": { | ||
| 899 | + "$ref": "#/definitions/taskResponseBody" | ||
| 900 | + } | ||
| 901 | + } | ||
| 902 | + }, | ||
| 903 | + "TaskChooseSuccessfulBidderRequestBody": { | ||
| 904 | + "title": "TaskChooseSuccessfulBidderRequestBody", | ||
| 905 | + "type": "object", | ||
| 906 | + "properties": { | ||
| 907 | + "operator": { | ||
| 908 | + "type": "integer", | ||
| 909 | + "description": "操作人uid", | ||
| 910 | + "required": [ | ||
| 911 | + "operator" | ||
| 912 | + ] | ||
| 913 | + }, | ||
| 914 | + "successfulBidder": { | ||
| 915 | + "type": "integer", | ||
| 916 | + "description": "中标者uid", | ||
| 917 | + "required": [ | ||
| 918 | + "successfulBidder" | ||
| 919 | + ] | ||
| 920 | + } | ||
| 921 | + } | ||
| 922 | + }, | ||
| 923 | + "TaskChooseSuccessfulBidderResponseBody": { | ||
| 924 | + "title": "Mediatype identifier: TaskChooseSuccessfulBidderResponseBody", | ||
| 925 | + "type": "object", | ||
| 926 | + "properties": { | ||
| 927 | + "task": { | ||
| 928 | + "$ref": "#/definitions/taskResponseBody" | ||
| 929 | + } | ||
| 930 | + } | ||
| 931 | + }, | ||
| 932 | + "TaskCreateTaskRequestBody": { | ||
| 933 | + "title": "TaskCreateTaskRequestBody", | ||
| 934 | + "type": "object", | ||
| 935 | + "properties": { | ||
| 936 | + "acceptanceStandard": { | ||
| 937 | + "type": "string", | ||
| 938 | + "description": "验收标准", | ||
| 939 | + "required": [ | ||
| 940 | + "acceptanceStandard" | ||
| 941 | + ] | ||
| 942 | + }, | ||
| 943 | + "bidEndTime": { | ||
| 944 | + "type": "string", | ||
| 945 | + "description": "竞标结束时间", | ||
| 946 | + "format": "datetime" | ||
| 947 | + }, | ||
| 948 | + "bidStartTime": { | ||
| 949 | + "type": "string", | ||
| 950 | + "description": "竞标开始时间", | ||
| 951 | + "format": "datetime" | ||
| 952 | + }, | ||
| 953 | + "customerValue": { | ||
| 954 | + "type": "array", | ||
| 955 | + "items": { | ||
| 956 | + "type": "string" | ||
| 957 | + }, | ||
| 958 | + "description": "客户价值列表", | ||
| 959 | + "required": [ | ||
| 960 | + "customerValue" | ||
| 961 | + ] | ||
| 962 | + }, | ||
| 963 | + "isRewardTake": { | ||
| 964 | + "type": "boolean", | ||
| 965 | + "description": "是否悬赏任务" | ||
| 966 | + }, | ||
| 967 | + "referenceResource": { | ||
| 968 | + "$ref": "#/definitions/referenceResourceRequestBody" | ||
| 969 | + }, | ||
| 970 | + "sponsor": { | ||
| 971 | + "type": "integer", | ||
| 972 | + "description": "任务发起者uid", | ||
| 973 | + "required": [ | ||
| 974 | + "sponsor" | ||
| 975 | + ] | ||
| 976 | + }, | ||
| 977 | + "suMoney": { | ||
| 978 | + "type": "number", | ||
| 979 | + "description": "奖励素币", | ||
| 980 | + "format": "double" | ||
| 981 | + }, | ||
| 982 | + "taskDescription": { | ||
| 983 | + "type": "string", | ||
| 984 | + "description": "任务描述", | ||
| 985 | + "required": [ | ||
| 986 | + "taskDescription" | ||
| 987 | + ] | ||
| 988 | + }, | ||
| 989 | + "taskName": { | ||
| 990 | + "type": "string", | ||
| 991 | + "description": "任务名称", | ||
| 992 | + "required": [ | ||
| 993 | + "taskName" | ||
| 994 | + ] | ||
| 995 | + }, | ||
| 996 | + "taskNature": { | ||
| 997 | + "type": "string", | ||
| 998 | + "description": "任务性质", | ||
| 999 | + "required": [ | ||
| 1000 | + "taskNature" | ||
| 1001 | + ] | ||
| 1002 | + }, | ||
| 1003 | + "taskPictureUrls": { | ||
| 1004 | + "type": "array", | ||
| 1005 | + "items": { | ||
| 1006 | + "type": "string" | ||
| 1007 | + }, | ||
| 1008 | + "description": "任务图片URL列表" | ||
| 1009 | + }, | ||
| 1010 | + "taskType": { | ||
| 1011 | + "type": "integer", | ||
| 1012 | + "description": "任务类型", | ||
| 1013 | + "required": [ | ||
| 1014 | + "taskType" | ||
| 1015 | + ] | ||
| 1016 | + } | ||
| 1017 | + } | ||
| 1018 | + }, | ||
| 1019 | + "TaskCreateTaskResponseBody": { | ||
| 1020 | + "title": "Mediatype identifier: TaskCreateTaskResponseBody", | ||
| 1021 | + "type": "object", | ||
| 1022 | + "properties": { | ||
| 1023 | + "task": { | ||
| 1024 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1025 | + } | ||
| 1026 | + } | ||
| 1027 | + }, | ||
| 1028 | + "TaskGetTaskResponseBody": { | ||
| 1029 | + "title": "Mediatype identifier: TaskGetTaskResponseBody", | ||
| 1030 | + "type": "object", | ||
| 1031 | + "properties": { | ||
| 1032 | + "task": { | ||
| 1033 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1034 | + } | ||
| 1035 | + } | ||
| 1036 | + }, | ||
| 1037 | + "TaskListTaskResponseBody": { | ||
| 1038 | + "title": "Mediatype identifier: TaskListTaskResponseBody", | ||
| 1039 | + "type": "object", | ||
| 1040 | + "properties": { | ||
| 1041 | + "count": { | ||
| 1042 | + "type": "integer", | ||
| 1043 | + "description": "结果总数", | ||
| 1044 | + "format": "int64" | ||
| 1045 | + }, | ||
| 1046 | + "tasks": { | ||
| 1047 | + "type": "array", | ||
| 1048 | + "items": { | ||
| 1049 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1050 | + } | ||
| 1051 | + } | ||
| 1052 | + } | ||
| 1053 | + }, | ||
| 1054 | + "TaskOffTaskRequestBody": { | ||
| 1055 | + "title": "TaskOffTaskRequestBody", | ||
| 1056 | + "type": "object", | ||
| 1057 | + "properties": { | ||
| 1058 | + "offReason": { | ||
| 1059 | + "type": "string", | ||
| 1060 | + "description": "关闭理由", | ||
| 1061 | + "required": [ | ||
| 1062 | + "offReason" | ||
| 1063 | + ] | ||
| 1064 | + }, | ||
| 1065 | + "operator": { | ||
| 1066 | + "type": "integer", | ||
| 1067 | + "description": "操作人uid", | ||
| 1068 | + "required": [ | ||
| 1069 | + "operator" | ||
| 1070 | + ] | ||
| 1071 | + } | ||
| 1072 | + } | ||
| 1073 | + }, | ||
| 1074 | + "TaskOffTaskResponseBody": { | ||
| 1075 | + "title": "Mediatype identifier: TaskOffTaskResponseBody", | ||
| 1076 | + "type": "object", | ||
| 1077 | + "properties": { | ||
| 1078 | + "task": { | ||
| 1079 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1080 | + } | ||
| 1081 | + } | ||
| 1082 | + }, | ||
| 1083 | + "TaskReleaseTaskRequestBody": { | ||
| 1084 | + "title": "TaskReleaseTaskRequestBody", | ||
| 1085 | + "type": "object", | ||
| 1086 | + "properties": { | ||
| 1087 | + "operator": { | ||
| 1088 | + "type": "integer", | ||
| 1089 | + "description": "操作人uid", | ||
| 1090 | + "required": [ | ||
| 1091 | + "operator" | ||
| 1092 | + ] | ||
| 1093 | + } | ||
| 1094 | + } | ||
| 1095 | + }, | ||
| 1096 | + "TaskReleaseTaskResponseBody": { | ||
| 1097 | + "title": "Mediatype identifier: TaskReleaseTaskResponseBody", | ||
| 1098 | + "type": "object", | ||
| 1099 | + "properties": { | ||
| 1100 | + "task": { | ||
| 1101 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1102 | + } | ||
| 1103 | + } | ||
| 1104 | + }, | ||
| 1105 | + "TaskRemoveTaskResponseBody": { | ||
| 1106 | + "title": "Mediatype identifier: TaskRemoveTaskResponseBody", | ||
| 1107 | + "type": "object", | ||
| 1108 | + "properties": { | ||
| 1109 | + "task": { | ||
| 1110 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1111 | + } | ||
| 1112 | + } | ||
| 1113 | + }, | ||
| 1114 | + "TaskRobTaskRequestBody": { | ||
| 1115 | + "title": "TaskRobTaskRequestBody", | ||
| 1116 | + "type": "object", | ||
| 1117 | + "properties": { | ||
| 1118 | + "receiver": { | ||
| 1119 | + "type": "integer", | ||
| 1120 | + "description": "领取人uid", | ||
| 1121 | + "required": [ | ||
| 1122 | + "receiver" | ||
| 1123 | + ] | ||
| 1124 | + } | ||
| 1125 | + } | ||
| 1126 | + }, | ||
| 1127 | + "TaskRobTaskResponseBody": { | ||
| 1128 | + "title": "Mediatype identifier: TaskRobTaskResponseBody", | ||
| 1129 | + "type": "object", | ||
| 1130 | + "properties": { | ||
| 1131 | + "task": { | ||
| 1132 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1133 | + } | ||
| 1134 | + } | ||
| 1135 | + }, | ||
| 1136 | + "TaskSearchTaskRequestBody": { | ||
| 1137 | + "title": "TaskSearchTaskRequestBody", | ||
| 1138 | + "type": "object", | ||
| 1139 | + "properties": { | ||
| 1140 | + "bidTimeMatch": { | ||
| 1141 | + "type": "integer", | ||
| 1142 | + "description": "竞标时间(1全部,2已截止,3未截止)", | ||
| 1143 | + "format": "int64" | ||
| 1144 | + }, | ||
| 1145 | + "companyId": { | ||
| 1146 | + "type": "integer", | ||
| 1147 | + "description": "公司ID", | ||
| 1148 | + "required": [ | ||
| 1149 | + "companyId" | ||
| 1150 | + ] | ||
| 1151 | + }, | ||
| 1152 | + "customerValue": { | ||
| 1153 | + "type": "string", | ||
| 1154 | + "description": "客户价值" | ||
| 1155 | + }, | ||
| 1156 | + "isRewardTake": { | ||
| 1157 | + "type": "boolean", | ||
| 1158 | + "description": "是否悬赏任务" | ||
| 1159 | + }, | ||
| 1160 | + "limit": { | ||
| 1161 | + "type": "integer", | ||
| 1162 | + "description": "查询限制", | ||
| 1163 | + "format": "int64" | ||
| 1164 | + }, | ||
| 1165 | + "offset": { | ||
| 1166 | + "type": "integer", | ||
| 1167 | + "description": "查询偏离量", | ||
| 1168 | + "format": "int64" | ||
| 1169 | + }, | ||
| 1170 | + "participator": { | ||
| 1171 | + "type": "integer", | ||
| 1172 | + "description": "任务参与者", | ||
| 1173 | + "format": "int64" | ||
| 1174 | + }, | ||
| 1175 | + "receiver": { | ||
| 1176 | + "type": "integer", | ||
| 1177 | + "description": "任务领取人", | ||
| 1178 | + "format": "int64" | ||
| 1179 | + }, | ||
| 1180 | + "sponsor": { | ||
| 1181 | + "type": "integer", | ||
| 1182 | + "description": "任务发起者", | ||
| 1183 | + "format": "int64" | ||
| 1184 | + }, | ||
| 1185 | + "taskContentMatch": { | ||
| 1186 | + "type": "string", | ||
| 1187 | + "description": "任务内容匹配" | ||
| 1188 | + }, | ||
| 1189 | + "taskNature": { | ||
| 1190 | + "type": "string", | ||
| 1191 | + "description": "任务性质" | ||
| 1192 | + }, | ||
| 1193 | + "taskStatus": { | ||
| 1194 | + "type": "integer", | ||
| 1195 | + "description": "任务状态", | ||
| 1196 | + "format": "int64" | ||
| 1197 | + }, | ||
| 1198 | + "taskType": { | ||
| 1199 | + "type": "integer", | ||
| 1200 | + "description": "任务类型", | ||
| 1201 | + "format": "int64" | ||
| 1202 | + } | ||
| 1203 | + } | ||
| 1204 | + }, | ||
| 1205 | + "TaskSearchTaskResponseBody": { | ||
| 1206 | + "title": "Mediatype identifier: TaskSearchTaskResponseBody", | ||
| 1207 | + "type": "object", | ||
| 1208 | + "properties": { | ||
| 1209 | + "count": { | ||
| 1210 | + "type": "integer", | ||
| 1211 | + "description": "结果总数", | ||
| 1212 | + "format": "int64" | ||
| 1213 | + }, | ||
| 1214 | + "tasks": { | ||
| 1215 | + "type": "array", | ||
| 1216 | + "items": { | ||
| 1217 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1218 | + } | ||
| 1219 | + } | ||
| 1220 | + } | ||
| 1221 | + }, | ||
| 1222 | + "TaskUpdateTaskRequestBody": { | ||
| 1223 | + "title": "TaskUpdateTaskRequestBody", | ||
| 1224 | + "type": "object", | ||
| 1225 | + "properties": { | ||
| 1226 | + "acceptanceStandard": { | ||
| 1227 | + "type": "string", | ||
| 1228 | + "description": "验收标准" | ||
| 1229 | + }, | ||
| 1230 | + "bidEndTime": { | ||
| 1231 | + "type": "string", | ||
| 1232 | + "description": "竞标结束时间", | ||
| 1233 | + "format": "datetime" | ||
| 1234 | + }, | ||
| 1235 | + "bidStartTime": { | ||
| 1236 | + "type": "string", | ||
| 1237 | + "description": "竞标开始时间", | ||
| 1238 | + "format": "datetime" | ||
| 1239 | + }, | ||
| 1240 | + "customerValue": { | ||
| 1241 | + "type": "array", | ||
| 1242 | + "items": { | ||
| 1243 | + "type": "string" | ||
| 1244 | + }, | ||
| 1245 | + "description": "客户价值列表" | ||
| 1246 | + }, | ||
| 1247 | + "isRewardTake": { | ||
| 1248 | + "type": "boolean", | ||
| 1249 | + "description": "是否悬赏任务" | ||
| 1250 | + }, | ||
| 1251 | + "referenceResource": { | ||
| 1252 | + "$ref": "#/definitions/referenceResourceRequestBody" | ||
| 1253 | + }, | ||
| 1254 | + "suMoney": { | ||
| 1255 | + "type": "number", | ||
| 1256 | + "description": "奖励素币", | ||
| 1257 | + "format": "double" | ||
| 1258 | + }, | ||
| 1259 | + "taskDescription": { | ||
| 1260 | + "type": "string", | ||
| 1261 | + "description": "任务描述" | ||
| 1262 | + }, | ||
| 1263 | + "taskName": { | ||
| 1264 | + "type": "string", | ||
| 1265 | + "description": "任务名称" | ||
| 1266 | + }, | ||
| 1267 | + "taskNature": { | ||
| 1268 | + "type": "string", | ||
| 1269 | + "description": "任务性质" | ||
| 1270 | + }, | ||
| 1271 | + "taskPictureUrls": { | ||
| 1272 | + "type": "array", | ||
| 1273 | + "items": { | ||
| 1274 | + "type": "string" | ||
| 1275 | + }, | ||
| 1276 | + "description": "任务图片URL列表" | ||
| 1277 | + } | ||
| 1278 | + } | ||
| 1279 | + }, | ||
| 1280 | + "TaskUpdateTaskResponseBody": { | ||
| 1281 | + "title": "Mediatype identifier: TaskUpdateTaskResponseBody", | ||
| 1282 | + "type": "object", | ||
| 1283 | + "properties": { | ||
| 1284 | + "task": { | ||
| 1285 | + "$ref": "#/definitions/taskResponseBody" | ||
| 1286 | + } | ||
| 1287 | + } | ||
| 1288 | + }, | ||
| 1289 | + "bidInfoResponseBody": { | ||
| 1290 | + "title": "bidInfoResponseBody", | ||
| 1291 | + "type": "object", | ||
| 1292 | + "properties": { | ||
| 1293 | + "bidEndTime": { | ||
| 1294 | + "type": "string", | ||
| 1295 | + "description": "竞标结束时间", | ||
| 1296 | + "required": [ | ||
| 1297 | + "bidEndTime" | ||
| 1298 | + ] | ||
| 1299 | + }, | ||
| 1300 | + "bidStartTime": { | ||
| 1301 | + "type": "string", | ||
| 1302 | + "description": "竞标开始时间", | ||
| 1303 | + "required": [ | ||
| 1304 | + "bidStartTime" | ||
| 1305 | + ] | ||
| 1306 | + }, | ||
| 1307 | + "bidderInfos": { | ||
| 1308 | + "type": "array", | ||
| 1309 | + "items": { | ||
| 1310 | + "$ref": "#/definitions/bidderInfoResponseBody" | ||
| 1311 | + }, | ||
| 1312 | + "description": "竞标人员列表" | ||
| 1313 | + }, | ||
| 1314 | + "successfulBidder": { | ||
| 1315 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1316 | + }, | ||
| 1317 | + "winBidTime": { | ||
| 1318 | + "type": "string", | ||
| 1319 | + "description": "中标时间", | ||
| 1320 | + "required": [ | ||
| 1321 | + "winBidTime" | ||
| 1322 | + ] | ||
| 1323 | + } | ||
| 1324 | + }, | ||
| 1325 | + "description": "竞标任务信息" | ||
| 1326 | + }, | ||
| 1327 | + "bidderInfoResponseBody": { | ||
| 1328 | + "title": "bidderInfoResponseBody", | ||
| 1329 | + "type": "object", | ||
| 1330 | + "properties": { | ||
| 1331 | + "bidTime": { | ||
| 1332 | + "type": "string", | ||
| 1333 | + "description": "竞标时间", | ||
| 1334 | + "required": [ | ||
| 1335 | + "bidTime" | ||
| 1336 | + ] | ||
| 1337 | + }, | ||
| 1338 | + "bidder": { | ||
| 1339 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1340 | + } | ||
| 1341 | + }, | ||
| 1342 | + "description": "竞标人员信息" | ||
| 1343 | + }, | ||
| 1344 | + "employeeInfoRequestBody": { | ||
| 1345 | + "title": "employeeInfoRequestBody", | ||
| 1346 | + "type": "object", | ||
| 1347 | + "properties": { | ||
| 1348 | + "employeeAccount": { | ||
| 1349 | + "type": "string", | ||
| 1350 | + "description": "员工账号" | ||
| 1351 | + }, | ||
| 1352 | + "employeeName": { | ||
| 1353 | + "type": "string", | ||
| 1354 | + "description": "员工姓名", | ||
| 1355 | + "required": [ | ||
| 1356 | + "employeeName" | ||
| 1357 | + ] | ||
| 1358 | + }, | ||
| 1359 | + "uid": { | ||
| 1360 | + "type": "integer", | ||
| 1361 | + "description": "统一用户UID", | ||
| 1362 | + "required": [ | ||
| 1363 | + "uid" | ||
| 1364 | + ] | ||
| 1365 | + } | ||
| 1366 | + }, | ||
| 1367 | + "description": "员工信息" | ||
| 1368 | + }, | ||
| 1369 | + "employeeInfoResponseBody": { | ||
| 1370 | + "title": "employeeInfoResponseBody", | ||
| 1371 | + "type": "object", | ||
| 1372 | + "properties": { | ||
| 1373 | + "employeeAccount": { | ||
| 1374 | + "type": "string", | ||
| 1375 | + "description": "员工账号" | ||
| 1376 | + }, | ||
| 1377 | + "employeeName": { | ||
| 1378 | + "type": "string", | ||
| 1379 | + "description": "员工姓名", | ||
| 1380 | + "required": [ | ||
| 1381 | + "employeeName" | ||
| 1382 | + ] | ||
| 1383 | + }, | ||
| 1384 | + "uid": { | ||
| 1385 | + "type": "integer", | ||
| 1386 | + "description": "统一用户UID", | ||
| 1387 | + "required": [ | ||
| 1388 | + "uid" | ||
| 1389 | + ] | ||
| 1390 | + } | ||
| 1391 | + }, | ||
| 1392 | + "description": "员工信息" | ||
| 1393 | + }, | ||
| 1394 | + "employeeResponseBody": { | ||
| 1395 | + "title": "employeeResponseBody", | ||
| 1396 | + "type": "object", | ||
| 1397 | + "properties": { | ||
| 1398 | + "companyId": { | ||
| 1399 | + "type": "integer", | ||
| 1400 | + "description": "公司ID", | ||
| 1401 | + "required": [ | ||
| 1402 | + "companyId" | ||
| 1403 | + ] | ||
| 1404 | + }, | ||
| 1405 | + "employeeId": { | ||
| 1406 | + "type": "integer", | ||
| 1407 | + "description": "员工ID", | ||
| 1408 | + "required": [ | ||
| 1409 | + "employeeId" | ||
| 1410 | + ] | ||
| 1411 | + }, | ||
| 1412 | + "employeeInfo": { | ||
| 1413 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1414 | + }, | ||
| 1415 | + "status": { | ||
| 1416 | + "type": "integer", | ||
| 1417 | + "description": "员工状态(启用或者禁用)", | ||
| 1418 | + "format": "int64" | ||
| 1419 | + }, | ||
| 1420 | + "suMoney": { | ||
| 1421 | + "type": "number", | ||
| 1422 | + "description": "当前素币", | ||
| 1423 | + "required": [ | ||
| 1424 | + "suMoney" | ||
| 1425 | + ] | ||
| 1426 | + } | ||
| 1427 | + }, | ||
| 1428 | + "description": "员工" | ||
| 1429 | + }, | ||
| 1430 | + "referenceResourceItemRequestBody": { | ||
| 1431 | + "title": "referenceResourceItemRequestBody", | ||
| 1432 | + "type": "object", | ||
| 1433 | + "properties": { | ||
| 1434 | + "serialNumber": { | ||
| 1435 | + "type": "integer", | ||
| 1436 | + "description": "编号", | ||
| 1437 | + "required": [ | ||
| 1438 | + "serialNumber" | ||
| 1439 | + ] | ||
| 1440 | + }, | ||
| 1441 | + "title": { | ||
| 1442 | + "type": "string", | ||
| 1443 | + "description": "标题", | ||
| 1444 | + "required": [ | ||
| 1445 | + "title" | ||
| 1446 | + ] | ||
| 1447 | + } | ||
| 1448 | + }, | ||
| 1449 | + "description": "引用资源项" | ||
| 1450 | + }, | ||
| 1451 | + "referenceResourceItemResponseBody": { | ||
| 1452 | + "title": "referenceResourceItemResponseBody", | ||
| 1453 | + "type": "object", | ||
| 1454 | + "properties": { | ||
| 1455 | + "serialNumber": { | ||
| 1456 | + "type": "integer", | ||
| 1457 | + "description": "编号", | ||
| 1458 | + "required": [ | ||
| 1459 | + "serialNumber" | ||
| 1460 | + ] | ||
| 1461 | + }, | ||
| 1462 | + "title": { | ||
| 1463 | + "type": "string", | ||
| 1464 | + "description": "标题", | ||
| 1465 | + "required": [ | ||
| 1466 | + "title" | ||
| 1467 | + ] | ||
| 1468 | + } | ||
| 1469 | + }, | ||
| 1470 | + "description": "引用资源项" | ||
| 1471 | + }, | ||
| 1472 | + "referenceResourceRequestBody": { | ||
| 1473 | + "title": "referenceResourceRequestBody", | ||
| 1474 | + "type": "object", | ||
| 1475 | + "properties": { | ||
| 1476 | + "referenceResourceItems": { | ||
| 1477 | + "type": "array", | ||
| 1478 | + "items": { | ||
| 1479 | + "$ref": "#/definitions/referenceResourceItemRequestBody" | ||
| 1480 | + }, | ||
| 1481 | + "description": "引用资源项列表", | ||
| 1482 | + "required": [ | ||
| 1483 | + "referenceResourceItems" | ||
| 1484 | + ] | ||
| 1485 | + }, | ||
| 1486 | + "referenceResourceType": { | ||
| 1487 | + "type": "integer", | ||
| 1488 | + "description": "引用类型", | ||
| 1489 | + "required": [ | ||
| 1490 | + "referenceResourceType" | ||
| 1491 | + ] | ||
| 1492 | + } | ||
| 1493 | + }, | ||
| 1494 | + "description": "引用资源" | ||
| 1495 | + }, | ||
| 1496 | + "referenceResourceResponseBody": { | ||
| 1497 | + "title": "referenceResourceResponseBody", | ||
| 1498 | + "type": "object", | ||
| 1499 | + "properties": { | ||
| 1500 | + "referenceResourceItems": { | ||
| 1501 | + "type": "array", | ||
| 1502 | + "items": { | ||
| 1503 | + "$ref": "#/definitions/referenceResourceItemResponseBody" | ||
| 1504 | + }, | ||
| 1505 | + "description": "引用资源项列表", | ||
| 1506 | + "required": [ | ||
| 1507 | + "referenceResourceItems" | ||
| 1508 | + ] | ||
| 1509 | + }, | ||
| 1510 | + "referenceResourceType": { | ||
| 1511 | + "type": "integer", | ||
| 1512 | + "description": "引用类型", | ||
| 1513 | + "required": [ | ||
| 1514 | + "referenceResourceType" | ||
| 1515 | + ] | ||
| 1516 | + } | ||
| 1517 | + }, | ||
| 1518 | + "description": "引用资源" | ||
| 1519 | + }, | ||
| 1520 | + "robInfoResponseBody": { | ||
| 1521 | + "title": "robInfoResponseBody", | ||
| 1522 | + "type": "object", | ||
| 1523 | + "properties": { | ||
| 1524 | + "receiveTime": { | ||
| 1525 | + "type": "string", | ||
| 1526 | + "description": "领取时间", | ||
| 1527 | + "required": [ | ||
| 1528 | + "receiveTime" | ||
| 1529 | + ] | ||
| 1530 | + }, | ||
| 1531 | + "receiver": { | ||
| 1532 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1533 | + } | ||
| 1534 | + }, | ||
| 1535 | + "description": "抢单任务信息" | ||
| 1536 | + }, | ||
| 1537 | + "taskPercentageItemRequestBody": { | ||
| 1538 | + "title": "taskPercentageItemRequestBody", | ||
| 1539 | + "type": "object", | ||
| 1540 | + "properties": { | ||
| 1541 | + "contributor": { | ||
| 1542 | + "$ref": "#/definitions/employeeInfoRequestBody" | ||
| 1543 | + }, | ||
| 1544 | + "percentage": { | ||
| 1545 | + "type": "integer", | ||
| 1546 | + "description": "任务贡献占比", | ||
| 1547 | + "required": [ | ||
| 1548 | + "percentage" | ||
| 1549 | + ] | ||
| 1550 | + } | ||
| 1551 | + }, | ||
| 1552 | + "description": "任务贡献占比项" | ||
| 1553 | + }, | ||
| 1554 | + "taskPercentageItemResponseBody": { | ||
| 1555 | + "title": "taskPercentageItemResponseBody", | ||
| 1556 | + "type": "object", | ||
| 1557 | + "properties": { | ||
| 1558 | + "contributor": { | ||
| 1559 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1560 | + }, | ||
| 1561 | + "percentage": { | ||
| 1562 | + "type": "integer", | ||
| 1563 | + "description": "任务贡献占比", | ||
| 1564 | + "required": [ | ||
| 1565 | + "percentage" | ||
| 1566 | + ] | ||
| 1567 | + } | ||
| 1568 | + }, | ||
| 1569 | + "description": "任务贡献占比项" | ||
| 1570 | + }, | ||
| 1571 | + "taskResponseBody": { | ||
| 1572 | + "title": "taskResponseBody", | ||
| 1573 | + "type": "object", | ||
| 1574 | + "properties": { | ||
| 1575 | + "acceptanceStandard": { | ||
| 1576 | + "type": "string", | ||
| 1577 | + "description": "验收标准", | ||
| 1578 | + "required": [ | ||
| 1579 | + "acceptanceStandard" | ||
| 1580 | + ] | ||
| 1581 | + }, | ||
| 1582 | + "bidInfo": { | ||
| 1583 | + "$ref": "#/definitions/bidInfoResponseBody" | ||
| 1584 | + }, | ||
| 1585 | + "companyId": { | ||
| 1586 | + "type": "integer", | ||
| 1587 | + "description": "公司ID", | ||
| 1588 | + "required": [ | ||
| 1589 | + "companyId" | ||
| 1590 | + ] | ||
| 1591 | + }, | ||
| 1592 | + "createTime": { | ||
| 1593 | + "type": "string", | ||
| 1594 | + "description": "创建时间", | ||
| 1595 | + "required": [ | ||
| 1596 | + "createTime" | ||
| 1597 | + ] | ||
| 1598 | + }, | ||
| 1599 | + "customerValue": { | ||
| 1600 | + "type": "array", | ||
| 1601 | + "items": { | ||
| 1602 | + "type": "string" | ||
| 1603 | + }, | ||
| 1604 | + "description": "客户价值列表", | ||
| 1605 | + "required": [ | ||
| 1606 | + "customerValue" | ||
| 1607 | + ] | ||
| 1608 | + }, | ||
| 1609 | + "isRewardTake": { | ||
| 1610 | + "type": "boolean", | ||
| 1611 | + "description": "是否悬赏任务" | ||
| 1612 | + }, | ||
| 1613 | + "participators": { | ||
| 1614 | + "type": "array", | ||
| 1615 | + "items": { | ||
| 1616 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1617 | + }, | ||
| 1618 | + "description": "任务参与者列表" | ||
| 1619 | + }, | ||
| 1620 | + "referenceResource": { | ||
| 1621 | + "$ref": "#/definitions/referenceResourceResponseBody" | ||
| 1622 | + }, | ||
| 1623 | + "releaseTime": { | ||
| 1624 | + "type": "string", | ||
| 1625 | + "description": "发布时间", | ||
| 1626 | + "format": "datetime" | ||
| 1627 | + }, | ||
| 1628 | + "robInfo": { | ||
| 1629 | + "$ref": "#/definitions/robInfoResponseBody" | ||
| 1630 | + }, | ||
| 1631 | + "solvePictureUrls": { | ||
| 1632 | + "type": "array", | ||
| 1633 | + "items": { | ||
| 1634 | + "type": "string" | ||
| 1635 | + }, | ||
| 1636 | + "description": "解决图片URL列表" | ||
| 1637 | + }, | ||
| 1638 | + "solveReport": { | ||
| 1639 | + "type": "string", | ||
| 1640 | + "description": "解决报告" | ||
| 1641 | + }, | ||
| 1642 | + "sponsor": { | ||
| 1643 | + "$ref": "#/definitions/employeeInfoResponseBody" | ||
| 1644 | + }, | ||
| 1645 | + "suMoney": { | ||
| 1646 | + "type": "number", | ||
| 1647 | + "description": "奖励素币", | ||
| 1648 | + "required": [ | ||
| 1649 | + "suMoney" | ||
| 1650 | + ] | ||
| 1651 | + }, | ||
| 1652 | + "taskDescription": { | ||
| 1653 | + "type": "string", | ||
| 1654 | + "description": "任务描述", | ||
| 1655 | + "required": [ | ||
| 1656 | + "taskDescription" | ||
| 1657 | + ] | ||
| 1658 | + }, | ||
| 1659 | + "taskId": { | ||
| 1660 | + "type": "integer", | ||
| 1661 | + "description": "任务ID", | ||
| 1662 | + "required": [ | ||
| 1663 | + "taskId" | ||
| 1664 | + ] | ||
| 1665 | + }, | ||
| 1666 | + "taskName": { | ||
| 1667 | + "type": "string", | ||
| 1668 | + "description": "任务名称", | ||
| 1669 | + "required": [ | ||
| 1670 | + "taskName" | ||
| 1671 | + ] | ||
| 1672 | + }, | ||
| 1673 | + "taskNature": { | ||
| 1674 | + "type": "string", | ||
| 1675 | + "description": "任务性质", | ||
| 1676 | + "required": [ | ||
| 1677 | + "taskNature" | ||
| 1678 | + ] | ||
| 1679 | + }, | ||
| 1680 | + "taskPercentage": { | ||
| 1681 | + "type": "array", | ||
| 1682 | + "items": { | ||
| 1683 | + "$ref": "#/definitions/taskPercentageItemResponseBody" | ||
| 1684 | + }, | ||
| 1685 | + "description": "任务贡献占比" | ||
| 1686 | + }, | ||
| 1687 | + "taskPictureUrls": { | ||
| 1688 | + "type": "array", | ||
| 1689 | + "items": { | ||
| 1690 | + "type": "string" | ||
| 1691 | + }, | ||
| 1692 | + "description": "任务图片URL列表" | ||
| 1693 | + }, | ||
| 1694 | + "taskStatus": { | ||
| 1695 | + "type": "integer", | ||
| 1696 | + "description": "任务状态", | ||
| 1697 | + "required": [ | ||
| 1698 | + "taskStatus" | ||
| 1699 | + ] | ||
| 1700 | + }, | ||
| 1701 | + "taskType": { | ||
| 1702 | + "type": "integer", | ||
| 1703 | + "description": "任务类型", | ||
| 1704 | + "required": [ | ||
| 1705 | + "taskType" | ||
| 1706 | + ] | ||
| 1707 | + } | ||
| 1708 | + }, | ||
| 1709 | + "description": "任务" | ||
| 1710 | + } | ||
| 1711 | + } | ||
| 1712 | +} |
document/openapi/swagger.yaml
0 → 100644
| 1 | +swagger: "2.0" | ||
| 2 | +info: | ||
| 3 | + title: "" | ||
| 4 | + description: 买买买价值系统 | ||
| 5 | + contact: | ||
| 6 | + name: linmadan | ||
| 7 | + email: 772181827@qq.com | ||
| 8 | + home: www.madannet.com | ||
| 9 | + version: 0.0.1 | ||
| 10 | +consumes: | ||
| 11 | + - application/json | ||
| 12 | + - application/xml | ||
| 13 | +produces: | ||
| 14 | + - application/json | ||
| 15 | + - application/xml | ||
| 16 | +paths: | ||
| 17 | + /employees: | ||
| 18 | + get: | ||
| 19 | + tags: | ||
| 20 | + - employee | ||
| 21 | + summary: 返回员工列表 | ||
| 22 | + description: 返回员工列表 | ||
| 23 | + operationId: employee#listEmployee | ||
| 24 | + parameters: | ||
| 25 | + - name: offset | ||
| 26 | + in: query | ||
| 27 | + description: 查询偏离量 | ||
| 28 | + required: false | ||
| 29 | + type: integer | ||
| 30 | + - name: limit | ||
| 31 | + in: query | ||
| 32 | + description: 查询限制 | ||
| 33 | + required: false | ||
| 34 | + type: integer | ||
| 35 | + responses: | ||
| 36 | + "200": | ||
| 37 | + description: OK response. | ||
| 38 | + schema: | ||
| 39 | + $ref: '#/definitions/EmployeeListEmployeeResponseBody' | ||
| 40 | + schemes: | ||
| 41 | + - http | ||
| 42 | + post: | ||
| 43 | + tags: | ||
| 44 | + - employee | ||
| 45 | + summary: 创建新员工 | ||
| 46 | + description: 创建新员工 | ||
| 47 | + operationId: employee#createEmployee | ||
| 48 | + parameters: | ||
| 49 | + - name: CreateEmployeeRequestBody | ||
| 50 | + in: body | ||
| 51 | + required: true | ||
| 52 | + schema: | ||
| 53 | + $ref: '#/definitions/EmployeeCreateEmployeeRequestBody' | ||
| 54 | + responses: | ||
| 55 | + "200": | ||
| 56 | + description: OK response. | ||
| 57 | + schema: | ||
| 58 | + $ref: '#/definitions/EmployeeCreateEmployeeResponseBody' | ||
| 59 | + schemes: | ||
| 60 | + - http | ||
| 61 | + /employees/{uid}: | ||
| 62 | + get: | ||
| 63 | + tags: | ||
| 64 | + - employee | ||
| 65 | + summary: 返回员工 | ||
| 66 | + description: 返回员工 | ||
| 67 | + operationId: employee#getEmployee | ||
| 68 | + parameters: | ||
| 69 | + - name: uid | ||
| 70 | + in: path | ||
| 71 | + description: 统一用户UID | ||
| 72 | + required: true | ||
| 73 | + type: integer | ||
| 74 | + responses: | ||
| 75 | + "200": | ||
| 76 | + description: OK response. | ||
| 77 | + schema: | ||
| 78 | + $ref: '#/definitions/EmployeeGetEmployeeResponseBody' | ||
| 79 | + schemes: | ||
| 80 | + - http | ||
| 81 | + put: | ||
| 82 | + tags: | ||
| 83 | + - employee | ||
| 84 | + summary: 更新员工 | ||
| 85 | + description: 更新员工 | ||
| 86 | + operationId: employee#updateEmployee | ||
| 87 | + parameters: | ||
| 88 | + - name: uid | ||
| 89 | + in: path | ||
| 90 | + description: 统一用户UID | ||
| 91 | + required: true | ||
| 92 | + type: integer | ||
| 93 | + - name: UpdateEmployeeRequestBody | ||
| 94 | + in: body | ||
| 95 | + required: true | ||
| 96 | + schema: | ||
| 97 | + $ref: '#/definitions/EmployeeUpdateEmployeeRequestBody' | ||
| 98 | + responses: | ||
| 99 | + "200": | ||
| 100 | + description: OK response. | ||
| 101 | + schema: | ||
| 102 | + $ref: '#/definitions/EmployeeUpdateEmployeeResponseBody' | ||
| 103 | + schemes: | ||
| 104 | + - http | ||
| 105 | + delete: | ||
| 106 | + tags: | ||
| 107 | + - employee | ||
| 108 | + summary: 移除员工 | ||
| 109 | + description: 移除员工 | ||
| 110 | + operationId: employee#removeEmployee | ||
| 111 | + parameters: | ||
| 112 | + - name: uid | ||
| 113 | + in: path | ||
| 114 | + description: 统一用户UID | ||
| 115 | + required: true | ||
| 116 | + type: integer | ||
| 117 | + responses: | ||
| 118 | + "200": | ||
| 119 | + description: OK response. | ||
| 120 | + schema: | ||
| 121 | + $ref: '#/definitions/EmployeeRemoveEmployeeResponseBody' | ||
| 122 | + schemes: | ||
| 123 | + - http | ||
| 124 | + /tasks: | ||
| 125 | + get: | ||
| 126 | + tags: | ||
| 127 | + - task | ||
| 128 | + summary: 返回任务列表 | ||
| 129 | + description: 返回任务列表 | ||
| 130 | + operationId: task#listTask | ||
| 131 | + parameters: | ||
| 132 | + - name: companyId | ||
| 133 | + in: query | ||
| 134 | + description: 公司ID | ||
| 135 | + required: false | ||
| 136 | + type: integer | ||
| 137 | + - name: sponsor | ||
| 138 | + in: query | ||
| 139 | + description: 任务发起者 | ||
| 140 | + required: false | ||
| 141 | + type: integer | ||
| 142 | + format: int64 | ||
| 143 | + - name: taskContentMatch | ||
| 144 | + in: query | ||
| 145 | + description: 任务内容匹配 | ||
| 146 | + required: false | ||
| 147 | + type: string | ||
| 148 | + - name: taskType | ||
| 149 | + in: query | ||
| 150 | + description: 任务类型 | ||
| 151 | + required: false | ||
| 152 | + type: integer | ||
| 153 | + - name: taskStatus | ||
| 154 | + in: query | ||
| 155 | + description: 任务状态 | ||
| 156 | + required: false | ||
| 157 | + type: integer | ||
| 158 | + - name: customerValue | ||
| 159 | + in: query | ||
| 160 | + description: 客户价值 | ||
| 161 | + required: false | ||
| 162 | + type: string | ||
| 163 | + - name: taskNature | ||
| 164 | + in: query | ||
| 165 | + description: 任务性质 | ||
| 166 | + required: false | ||
| 167 | + type: string | ||
| 168 | + - name: isRewardTake | ||
| 169 | + in: query | ||
| 170 | + description: 是否悬赏任务 | ||
| 171 | + required: false | ||
| 172 | + type: boolean | ||
| 173 | + - name: bidTimeMatch | ||
| 174 | + in: query | ||
| 175 | + description: 竞标时间(1全部,2已截止,3未截止) | ||
| 176 | + required: false | ||
| 177 | + type: integer | ||
| 178 | + - name: receiver | ||
| 179 | + in: query | ||
| 180 | + description: 任务领取人 | ||
| 181 | + required: false | ||
| 182 | + type: integer | ||
| 183 | + format: int64 | ||
| 184 | + - name: participator | ||
| 185 | + in: query | ||
| 186 | + description: 任务参与者 | ||
| 187 | + required: false | ||
| 188 | + type: integer | ||
| 189 | + format: int64 | ||
| 190 | + - name: offset | ||
| 191 | + in: query | ||
| 192 | + description: 查询偏离量 | ||
| 193 | + required: false | ||
| 194 | + type: integer | ||
| 195 | + - name: limit | ||
| 196 | + in: query | ||
| 197 | + description: 查询限制 | ||
| 198 | + required: false | ||
| 199 | + type: integer | ||
| 200 | + responses: | ||
| 201 | + "200": | ||
| 202 | + description: OK response. | ||
| 203 | + schema: | ||
| 204 | + $ref: '#/definitions/TaskListTaskResponseBody' | ||
| 205 | + schemes: | ||
| 206 | + - http | ||
| 207 | + post: | ||
| 208 | + tags: | ||
| 209 | + - task | ||
| 210 | + summary: 创建新任务 | ||
| 211 | + description: 创建新任务 | ||
| 212 | + operationId: task#createTask | ||
| 213 | + parameters: | ||
| 214 | + - name: CreateTaskRequestBody | ||
| 215 | + in: body | ||
| 216 | + required: true | ||
| 217 | + schema: | ||
| 218 | + $ref: '#/definitions/TaskCreateTaskRequestBody' | ||
| 219 | + responses: | ||
| 220 | + "200": | ||
| 221 | + description: OK response. | ||
| 222 | + schema: | ||
| 223 | + $ref: '#/definitions/TaskCreateTaskResponseBody' | ||
| 224 | + schemes: | ||
| 225 | + - http | ||
| 226 | + /tasks/{taskId}: | ||
| 227 | + get: | ||
| 228 | + tags: | ||
| 229 | + - task | ||
| 230 | + summary: 返回任务 | ||
| 231 | + description: 返回任务 | ||
| 232 | + operationId: task#getTask | ||
| 233 | + parameters: | ||
| 234 | + - name: taskId | ||
| 235 | + in: path | ||
| 236 | + description: 任务ID | ||
| 237 | + required: true | ||
| 238 | + type: integer | ||
| 239 | + responses: | ||
| 240 | + "200": | ||
| 241 | + description: OK response. | ||
| 242 | + schema: | ||
| 243 | + $ref: '#/definitions/TaskGetTaskResponseBody' | ||
| 244 | + schemes: | ||
| 245 | + - http | ||
| 246 | + put: | ||
| 247 | + tags: | ||
| 248 | + - task | ||
| 249 | + summary: 更新任务 | ||
| 250 | + description: 更新任务 | ||
| 251 | + operationId: task#updateTask | ||
| 252 | + parameters: | ||
| 253 | + - name: taskId | ||
| 254 | + in: path | ||
| 255 | + description: 任务ID | ||
| 256 | + required: true | ||
| 257 | + type: integer | ||
| 258 | + - name: UpdateTaskRequestBody | ||
| 259 | + in: body | ||
| 260 | + required: true | ||
| 261 | + schema: | ||
| 262 | + $ref: '#/definitions/TaskUpdateTaskRequestBody' | ||
| 263 | + responses: | ||
| 264 | + "200": | ||
| 265 | + description: OK response. | ||
| 266 | + schema: | ||
| 267 | + $ref: '#/definitions/TaskUpdateTaskResponseBody' | ||
| 268 | + schemes: | ||
| 269 | + - http | ||
| 270 | + delete: | ||
| 271 | + tags: | ||
| 272 | + - task | ||
| 273 | + summary: 移除任务 | ||
| 274 | + description: 移除任务 | ||
| 275 | + operationId: task#removeTask | ||
| 276 | + parameters: | ||
| 277 | + - name: taskId | ||
| 278 | + in: path | ||
| 279 | + description: 任务ID | ||
| 280 | + required: true | ||
| 281 | + type: integer | ||
| 282 | + responses: | ||
| 283 | + "200": | ||
| 284 | + description: OK response. | ||
| 285 | + schema: | ||
| 286 | + $ref: '#/definitions/TaskRemoveTaskResponseBody' | ||
| 287 | + schemes: | ||
| 288 | + - http | ||
| 289 | + /tasks/{taskId}/acceptance: | ||
| 290 | + post: | ||
| 291 | + tags: | ||
| 292 | + - task | ||
| 293 | + summary: 验收任务 | ||
| 294 | + description: 验收任务 | ||
| 295 | + operationId: task#acceptanceTask | ||
| 296 | + parameters: | ||
| 297 | + - name: taskId | ||
| 298 | + in: path | ||
| 299 | + description: 任务ID | ||
| 300 | + required: true | ||
| 301 | + type: integer | ||
| 302 | + - name: AcceptanceTaskRequestBody | ||
| 303 | + in: body | ||
| 304 | + required: true | ||
| 305 | + schema: | ||
| 306 | + $ref: '#/definitions/TaskAcceptanceTaskRequestBody' | ||
| 307 | + responses: | ||
| 308 | + "200": | ||
| 309 | + description: OK response. | ||
| 310 | + schema: | ||
| 311 | + $ref: '#/definitions/TaskAcceptanceTaskResponseBody' | ||
| 312 | + schemes: | ||
| 313 | + - http | ||
| 314 | + /tasks/{taskId}/apply-complete: | ||
| 315 | + post: | ||
| 316 | + tags: | ||
| 317 | + - task | ||
| 318 | + summary: 申请完成任务 | ||
| 319 | + description: 申请完成任务 | ||
| 320 | + operationId: task#applyCompleteTask | ||
| 321 | + parameters: | ||
| 322 | + - name: taskId | ||
| 323 | + in: path | ||
| 324 | + description: 任务ID | ||
| 325 | + required: true | ||
| 326 | + type: integer | ||
| 327 | + - name: ApplyCompleteTaskRequestBody | ||
| 328 | + in: body | ||
| 329 | + required: true | ||
| 330 | + schema: | ||
| 331 | + $ref: '#/definitions/TaskApplyCompleteTaskRequestBody' | ||
| 332 | + responses: | ||
| 333 | + "200": | ||
| 334 | + description: OK response. | ||
| 335 | + schema: | ||
| 336 | + $ref: '#/definitions/TaskApplyCompleteTaskResponseBody' | ||
| 337 | + schemes: | ||
| 338 | + - http | ||
| 339 | + /tasks/{taskId}/bid: | ||
| 340 | + post: | ||
| 341 | + tags: | ||
| 342 | + - task | ||
| 343 | + summary: 对任务进行竞标 | ||
| 344 | + description: 对任务进行竞标 | ||
| 345 | + operationId: task#bidTask | ||
| 346 | + parameters: | ||
| 347 | + - name: taskId | ||
| 348 | + in: path | ||
| 349 | + description: 任务ID | ||
| 350 | + required: true | ||
| 351 | + type: integer | ||
| 352 | + - name: BidTaskRequestBody | ||
| 353 | + in: body | ||
| 354 | + required: true | ||
| 355 | + schema: | ||
| 356 | + $ref: '#/definitions/TaskBidTaskRequestBody' | ||
| 357 | + responses: | ||
| 358 | + "200": | ||
| 359 | + description: OK response. | ||
| 360 | + schema: | ||
| 361 | + $ref: '#/definitions/TaskBidTaskResponseBody' | ||
| 362 | + schemes: | ||
| 363 | + - http | ||
| 364 | + /tasks/{taskId}/choose-successful-bidder: | ||
| 365 | + post: | ||
| 366 | + tags: | ||
| 367 | + - task | ||
| 368 | + summary: 选择竞标任务的中标人 | ||
| 369 | + description: 选择竞标任务的中标人 | ||
| 370 | + operationId: task#chooseSuccessfulBidder | ||
| 371 | + parameters: | ||
| 372 | + - name: taskId | ||
| 373 | + in: path | ||
| 374 | + description: 任务ID | ||
| 375 | + required: true | ||
| 376 | + type: integer | ||
| 377 | + - name: ChooseSuccessfulBidderRequestBody | ||
| 378 | + in: body | ||
| 379 | + required: true | ||
| 380 | + schema: | ||
| 381 | + $ref: '#/definitions/TaskChooseSuccessfulBidderRequestBody' | ||
| 382 | + responses: | ||
| 383 | + "200": | ||
| 384 | + description: OK response. | ||
| 385 | + schema: | ||
| 386 | + $ref: '#/definitions/TaskChooseSuccessfulBidderResponseBody' | ||
| 387 | + schemes: | ||
| 388 | + - http | ||
| 389 | + /tasks/{taskId}/dff: | ||
| 390 | + post: | ||
| 391 | + tags: | ||
| 392 | + - task | ||
| 393 | + summary: 关闭任务 | ||
| 394 | + description: 关闭任务 | ||
| 395 | + operationId: task#offTask | ||
| 396 | + parameters: | ||
| 397 | + - name: taskId | ||
| 398 | + in: path | ||
| 399 | + description: 任务ID | ||
| 400 | + required: true | ||
| 401 | + type: integer | ||
| 402 | + - name: OffTaskRequestBody | ||
| 403 | + in: body | ||
| 404 | + required: true | ||
| 405 | + schema: | ||
| 406 | + $ref: '#/definitions/TaskOffTaskRequestBody' | ||
| 407 | + responses: | ||
| 408 | + "200": | ||
| 409 | + description: OK response. | ||
| 410 | + schema: | ||
| 411 | + $ref: '#/definitions/TaskOffTaskResponseBody' | ||
| 412 | + schemes: | ||
| 413 | + - http | ||
| 414 | + /tasks/{taskId}/release: | ||
| 415 | + post: | ||
| 416 | + tags: | ||
| 417 | + - task | ||
| 418 | + summary: 发布任务 | ||
| 419 | + description: 发布任务 | ||
| 420 | + operationId: task#releaseTask | ||
| 421 | + parameters: | ||
| 422 | + - name: taskId | ||
| 423 | + in: path | ||
| 424 | + description: 任务ID | ||
| 425 | + required: true | ||
| 426 | + type: integer | ||
| 427 | + - name: ReleaseTaskRequestBody | ||
| 428 | + in: body | ||
| 429 | + required: true | ||
| 430 | + schema: | ||
| 431 | + $ref: '#/definitions/TaskReleaseTaskRequestBody' | ||
| 432 | + responses: | ||
| 433 | + "200": | ||
| 434 | + description: OK response. | ||
| 435 | + schema: | ||
| 436 | + $ref: '#/definitions/TaskReleaseTaskResponseBody' | ||
| 437 | + schemes: | ||
| 438 | + - http | ||
| 439 | + /tasks/{taskId}/rob: | ||
| 440 | + post: | ||
| 441 | + tags: | ||
| 442 | + - task | ||
| 443 | + summary: 对任务进行抢单 | ||
| 444 | + description: 对任务进行抢单 | ||
| 445 | + operationId: task#robTask | ||
| 446 | + parameters: | ||
| 447 | + - name: taskId | ||
| 448 | + in: path | ||
| 449 | + description: 任务ID | ||
| 450 | + required: true | ||
| 451 | + type: integer | ||
| 452 | + - name: RobTaskRequestBody | ||
| 453 | + in: body | ||
| 454 | + required: true | ||
| 455 | + schema: | ||
| 456 | + $ref: '#/definitions/TaskRobTaskRequestBody' | ||
| 457 | + responses: | ||
| 458 | + "200": | ||
| 459 | + description: OK response. | ||
| 460 | + schema: | ||
| 461 | + $ref: '#/definitions/TaskRobTaskResponseBody' | ||
| 462 | + schemes: | ||
| 463 | + - http | ||
| 464 | + /tasks/search: | ||
| 465 | + post: | ||
| 466 | + tags: | ||
| 467 | + - task | ||
| 468 | + summary: 搜索任务 | ||
| 469 | + description: 搜索任务 | ||
| 470 | + operationId: task#searchTask | ||
| 471 | + parameters: | ||
| 472 | + - name: SearchTaskRequestBody | ||
| 473 | + in: body | ||
| 474 | + required: true | ||
| 475 | + schema: | ||
| 476 | + $ref: '#/definitions/TaskSearchTaskRequestBody' | ||
| 477 | + responses: | ||
| 478 | + "200": | ||
| 479 | + description: OK response. | ||
| 480 | + schema: | ||
| 481 | + $ref: '#/definitions/TaskSearchTaskResponseBody' | ||
| 482 | + schemes: | ||
| 483 | + - http | ||
| 484 | +definitions: | ||
| 485 | + EmployeeCreateEmployeeRequestBody: | ||
| 486 | + title: EmployeeCreateEmployeeRequestBody | ||
| 487 | + type: object | ||
| 488 | + properties: | ||
| 489 | + employeeAccount: | ||
| 490 | + type: string | ||
| 491 | + description: 员工账号 | ||
| 492 | + employeeName: | ||
| 493 | + type: string | ||
| 494 | + description: 员工姓名 | ||
| 495 | + uid: | ||
| 496 | + type: integer | ||
| 497 | + description: 统一用户UID | ||
| 498 | + required: | ||
| 499 | + - uid | ||
| 500 | + EmployeeCreateEmployeeResponseBody: | ||
| 501 | + title: 'Mediatype identifier: EmployeeCreateEmployeeResponseBody' | ||
| 502 | + type: object | ||
| 503 | + properties: | ||
| 504 | + employee: | ||
| 505 | + $ref: '#/definitions/employeeResponseBody' | ||
| 506 | + EmployeeGetEmployeeResponseBody: | ||
| 507 | + title: 'Mediatype identifier: EmployeeGetEmployeeResponseBody' | ||
| 508 | + type: object | ||
| 509 | + properties: | ||
| 510 | + employee: | ||
| 511 | + $ref: '#/definitions/employeeResponseBody' | ||
| 512 | + EmployeeListEmployeeResponseBody: | ||
| 513 | + title: 'Mediatype identifier: EmployeeListEmployeeResponseBody' | ||
| 514 | + type: object | ||
| 515 | + properties: | ||
| 516 | + count: | ||
| 517 | + type: integer | ||
| 518 | + description: 结果总数 | ||
| 519 | + format: int64 | ||
| 520 | + employees: | ||
| 521 | + type: array | ||
| 522 | + items: | ||
| 523 | + $ref: '#/definitions/employeeResponseBody' | ||
| 524 | + EmployeeRemoveEmployeeResponseBody: | ||
| 525 | + title: 'Mediatype identifier: EmployeeRemoveEmployeeResponseBody' | ||
| 526 | + type: object | ||
| 527 | + properties: | ||
| 528 | + employee: | ||
| 529 | + $ref: '#/definitions/employeeResponseBody' | ||
| 530 | + EmployeeUpdateEmployeeRequestBody: | ||
| 531 | + title: EmployeeUpdateEmployeeRequestBody | ||
| 532 | + type: object | ||
| 533 | + properties: | ||
| 534 | + employeeAccount: | ||
| 535 | + type: string | ||
| 536 | + description: 员工账号 | ||
| 537 | + employeeName: | ||
| 538 | + type: string | ||
| 539 | + description: 员工姓名 | ||
| 540 | + EmployeeUpdateEmployeeResponseBody: | ||
| 541 | + title: 'Mediatype identifier: EmployeeUpdateEmployeeResponseBody' | ||
| 542 | + type: object | ||
| 543 | + properties: | ||
| 544 | + employee: | ||
| 545 | + $ref: '#/definitions/employeeResponseBody' | ||
| 546 | + TaskAcceptanceTaskRequestBody: | ||
| 547 | + title: TaskAcceptanceTaskRequestBody | ||
| 548 | + type: object | ||
| 549 | + properties: | ||
| 550 | + operator: | ||
| 551 | + type: integer | ||
| 552 | + description: 操作人uid | ||
| 553 | + required: | ||
| 554 | + - operator | ||
| 555 | + participators: | ||
| 556 | + type: array | ||
| 557 | + items: | ||
| 558 | + type: integer | ||
| 559 | + format: int64 | ||
| 560 | + description: 任务参与者UID列表 | ||
| 561 | + solvePictureUrls: | ||
| 562 | + type: array | ||
| 563 | + items: | ||
| 564 | + type: string | ||
| 565 | + description: 解决图片URL列表 | ||
| 566 | + solveReport: | ||
| 567 | + type: string | ||
| 568 | + description: 解决报告 | ||
| 569 | + taskPercentage: | ||
| 570 | + type: array | ||
| 571 | + items: | ||
| 572 | + $ref: '#/definitions/taskPercentageItemRequestBody' | ||
| 573 | + description: 任务贡献占比 | ||
| 574 | + required: | ||
| 575 | + - taskPercentage | ||
| 576 | + TaskAcceptanceTaskResponseBody: | ||
| 577 | + title: 'Mediatype identifier: TaskAcceptanceTaskResponseBody' | ||
| 578 | + type: object | ||
| 579 | + properties: | ||
| 580 | + task: | ||
| 581 | + $ref: '#/definitions/taskResponseBody' | ||
| 582 | + TaskApplyCompleteTaskRequestBody: | ||
| 583 | + title: TaskApplyCompleteTaskRequestBody | ||
| 584 | + type: object | ||
| 585 | + properties: | ||
| 586 | + receiver: | ||
| 587 | + type: integer | ||
| 588 | + description: 领取人或者中标人uid | ||
| 589 | + required: | ||
| 590 | + - receiver | ||
| 591 | + TaskApplyCompleteTaskResponseBody: | ||
| 592 | + title: 'Mediatype identifier: TaskApplyCompleteTaskResponseBody' | ||
| 593 | + type: object | ||
| 594 | + properties: | ||
| 595 | + task: | ||
| 596 | + $ref: '#/definitions/taskResponseBody' | ||
| 597 | + TaskBidTaskRequestBody: | ||
| 598 | + title: TaskBidTaskRequestBody | ||
| 599 | + type: object | ||
| 600 | + properties: | ||
| 601 | + bidder: | ||
| 602 | + type: integer | ||
| 603 | + description: 竞标人uid | ||
| 604 | + required: | ||
| 605 | + - bidder | ||
| 606 | + TaskBidTaskResponseBody: | ||
| 607 | + title: 'Mediatype identifier: TaskBidTaskResponseBody' | ||
| 608 | + type: object | ||
| 609 | + properties: | ||
| 610 | + task: | ||
| 611 | + $ref: '#/definitions/taskResponseBody' | ||
| 612 | + TaskChooseSuccessfulBidderRequestBody: | ||
| 613 | + title: TaskChooseSuccessfulBidderRequestBody | ||
| 614 | + type: object | ||
| 615 | + properties: | ||
| 616 | + operator: | ||
| 617 | + type: integer | ||
| 618 | + description: 操作人uid | ||
| 619 | + required: | ||
| 620 | + - operator | ||
| 621 | + successfulBidder: | ||
| 622 | + type: integer | ||
| 623 | + description: 中标者uid | ||
| 624 | + required: | ||
| 625 | + - successfulBidder | ||
| 626 | + TaskChooseSuccessfulBidderResponseBody: | ||
| 627 | + title: 'Mediatype identifier: TaskChooseSuccessfulBidderResponseBody' | ||
| 628 | + type: object | ||
| 629 | + properties: | ||
| 630 | + task: | ||
| 631 | + $ref: '#/definitions/taskResponseBody' | ||
| 632 | + TaskCreateTaskRequestBody: | ||
| 633 | + title: TaskCreateTaskRequestBody | ||
| 634 | + type: object | ||
| 635 | + properties: | ||
| 636 | + acceptanceStandard: | ||
| 637 | + type: string | ||
| 638 | + description: 验收标准 | ||
| 639 | + required: | ||
| 640 | + - acceptanceStandard | ||
| 641 | + bidEndTime: | ||
| 642 | + type: string | ||
| 643 | + description: 竞标结束时间 | ||
| 644 | + format: datetime | ||
| 645 | + bidStartTime: | ||
| 646 | + type: string | ||
| 647 | + description: 竞标开始时间 | ||
| 648 | + format: datetime | ||
| 649 | + customerValue: | ||
| 650 | + type: array | ||
| 651 | + items: | ||
| 652 | + type: string | ||
| 653 | + description: 客户价值列表 | ||
| 654 | + required: | ||
| 655 | + - customerValue | ||
| 656 | + isRewardTake: | ||
| 657 | + type: boolean | ||
| 658 | + description: 是否悬赏任务 | ||
| 659 | + referenceResource: | ||
| 660 | + $ref: '#/definitions/referenceResourceRequestBody' | ||
| 661 | + sponsor: | ||
| 662 | + type: integer | ||
| 663 | + description: 任务发起者uid | ||
| 664 | + required: | ||
| 665 | + - sponsor | ||
| 666 | + suMoney: | ||
| 667 | + type: number | ||
| 668 | + description: 奖励素币 | ||
| 669 | + format: double | ||
| 670 | + taskDescription: | ||
| 671 | + type: string | ||
| 672 | + description: 任务描述 | ||
| 673 | + required: | ||
| 674 | + - taskDescription | ||
| 675 | + taskName: | ||
| 676 | + type: string | ||
| 677 | + description: 任务名称 | ||
| 678 | + required: | ||
| 679 | + - taskName | ||
| 680 | + taskNature: | ||
| 681 | + type: string | ||
| 682 | + description: 任务性质 | ||
| 683 | + required: | ||
| 684 | + - taskNature | ||
| 685 | + taskPictureUrls: | ||
| 686 | + type: array | ||
| 687 | + items: | ||
| 688 | + type: string | ||
| 689 | + description: 任务图片URL列表 | ||
| 690 | + taskType: | ||
| 691 | + type: integer | ||
| 692 | + description: 任务类型 | ||
| 693 | + required: | ||
| 694 | + - taskType | ||
| 695 | + TaskCreateTaskResponseBody: | ||
| 696 | + title: 'Mediatype identifier: TaskCreateTaskResponseBody' | ||
| 697 | + type: object | ||
| 698 | + properties: | ||
| 699 | + task: | ||
| 700 | + $ref: '#/definitions/taskResponseBody' | ||
| 701 | + TaskGetTaskResponseBody: | ||
| 702 | + title: 'Mediatype identifier: TaskGetTaskResponseBody' | ||
| 703 | + type: object | ||
| 704 | + properties: | ||
| 705 | + task: | ||
| 706 | + $ref: '#/definitions/taskResponseBody' | ||
| 707 | + TaskListTaskResponseBody: | ||
| 708 | + title: 'Mediatype identifier: TaskListTaskResponseBody' | ||
| 709 | + type: object | ||
| 710 | + properties: | ||
| 711 | + count: | ||
| 712 | + type: integer | ||
| 713 | + description: 结果总数 | ||
| 714 | + format: int64 | ||
| 715 | + tasks: | ||
| 716 | + type: array | ||
| 717 | + items: | ||
| 718 | + $ref: '#/definitions/taskResponseBody' | ||
| 719 | + TaskOffTaskRequestBody: | ||
| 720 | + title: TaskOffTaskRequestBody | ||
| 721 | + type: object | ||
| 722 | + properties: | ||
| 723 | + offReason: | ||
| 724 | + type: string | ||
| 725 | + description: 关闭理由 | ||
| 726 | + required: | ||
| 727 | + - offReason | ||
| 728 | + operator: | ||
| 729 | + type: integer | ||
| 730 | + description: 操作人uid | ||
| 731 | + required: | ||
| 732 | + - operator | ||
| 733 | + TaskOffTaskResponseBody: | ||
| 734 | + title: 'Mediatype identifier: TaskOffTaskResponseBody' | ||
| 735 | + type: object | ||
| 736 | + properties: | ||
| 737 | + task: | ||
| 738 | + $ref: '#/definitions/taskResponseBody' | ||
| 739 | + TaskReleaseTaskRequestBody: | ||
| 740 | + title: TaskReleaseTaskRequestBody | ||
| 741 | + type: object | ||
| 742 | + properties: | ||
| 743 | + operator: | ||
| 744 | + type: integer | ||
| 745 | + description: 操作人uid | ||
| 746 | + required: | ||
| 747 | + - operator | ||
| 748 | + TaskReleaseTaskResponseBody: | ||
| 749 | + title: 'Mediatype identifier: TaskReleaseTaskResponseBody' | ||
| 750 | + type: object | ||
| 751 | + properties: | ||
| 752 | + task: | ||
| 753 | + $ref: '#/definitions/taskResponseBody' | ||
| 754 | + TaskRemoveTaskResponseBody: | ||
| 755 | + title: 'Mediatype identifier: TaskRemoveTaskResponseBody' | ||
| 756 | + type: object | ||
| 757 | + properties: | ||
| 758 | + task: | ||
| 759 | + $ref: '#/definitions/taskResponseBody' | ||
| 760 | + TaskRobTaskRequestBody: | ||
| 761 | + title: TaskRobTaskRequestBody | ||
| 762 | + type: object | ||
| 763 | + properties: | ||
| 764 | + receiver: | ||
| 765 | + type: integer | ||
| 766 | + description: 领取人uid | ||
| 767 | + required: | ||
| 768 | + - receiver | ||
| 769 | + TaskRobTaskResponseBody: | ||
| 770 | + title: 'Mediatype identifier: TaskRobTaskResponseBody' | ||
| 771 | + type: object | ||
| 772 | + properties: | ||
| 773 | + task: | ||
| 774 | + $ref: '#/definitions/taskResponseBody' | ||
| 775 | + TaskSearchTaskRequestBody: | ||
| 776 | + title: TaskSearchTaskRequestBody | ||
| 777 | + type: object | ||
| 778 | + properties: | ||
| 779 | + bidTimeMatch: | ||
| 780 | + type: integer | ||
| 781 | + description: 竞标时间(1全部,2已截止,3未截止) | ||
| 782 | + format: int64 | ||
| 783 | + companyId: | ||
| 784 | + type: integer | ||
| 785 | + description: 公司ID | ||
| 786 | + required: | ||
| 787 | + - companyId | ||
| 788 | + customerValue: | ||
| 789 | + type: string | ||
| 790 | + description: 客户价值 | ||
| 791 | + isRewardTake: | ||
| 792 | + type: boolean | ||
| 793 | + description: 是否悬赏任务 | ||
| 794 | + limit: | ||
| 795 | + type: integer | ||
| 796 | + description: 查询限制 | ||
| 797 | + format: int64 | ||
| 798 | + offset: | ||
| 799 | + type: integer | ||
| 800 | + description: 查询偏离量 | ||
| 801 | + format: int64 | ||
| 802 | + participator: | ||
| 803 | + type: integer | ||
| 804 | + description: 任务参与者 | ||
| 805 | + format: int64 | ||
| 806 | + receiver: | ||
| 807 | + type: integer | ||
| 808 | + description: 任务领取人 | ||
| 809 | + format: int64 | ||
| 810 | + sponsor: | ||
| 811 | + type: integer | ||
| 812 | + description: 任务发起者 | ||
| 813 | + format: int64 | ||
| 814 | + taskContentMatch: | ||
| 815 | + type: string | ||
| 816 | + description: 任务内容匹配 | ||
| 817 | + taskNature: | ||
| 818 | + type: string | ||
| 819 | + description: 任务性质 | ||
| 820 | + taskStatus: | ||
| 821 | + type: integer | ||
| 822 | + description: 任务状态 | ||
| 823 | + format: int64 | ||
| 824 | + taskType: | ||
| 825 | + type: integer | ||
| 826 | + description: 任务类型 | ||
| 827 | + format: int64 | ||
| 828 | + TaskSearchTaskResponseBody: | ||
| 829 | + title: 'Mediatype identifier: TaskSearchTaskResponseBody' | ||
| 830 | + type: object | ||
| 831 | + properties: | ||
| 832 | + count: | ||
| 833 | + type: integer | ||
| 834 | + description: 结果总数 | ||
| 835 | + format: int64 | ||
| 836 | + tasks: | ||
| 837 | + type: array | ||
| 838 | + items: | ||
| 839 | + $ref: '#/definitions/taskResponseBody' | ||
| 840 | + TaskUpdateTaskRequestBody: | ||
| 841 | + title: TaskUpdateTaskRequestBody | ||
| 842 | + type: object | ||
| 843 | + properties: | ||
| 844 | + acceptanceStandard: | ||
| 845 | + type: string | ||
| 846 | + description: 验收标准 | ||
| 847 | + bidEndTime: | ||
| 848 | + type: string | ||
| 849 | + description: 竞标结束时间 | ||
| 850 | + format: datetime | ||
| 851 | + bidStartTime: | ||
| 852 | + type: string | ||
| 853 | + description: 竞标开始时间 | ||
| 854 | + format: datetime | ||
| 855 | + customerValue: | ||
| 856 | + type: array | ||
| 857 | + items: | ||
| 858 | + type: string | ||
| 859 | + description: 客户价值列表 | ||
| 860 | + isRewardTake: | ||
| 861 | + type: boolean | ||
| 862 | + description: 是否悬赏任务 | ||
| 863 | + referenceResource: | ||
| 864 | + $ref: '#/definitions/referenceResourceRequestBody' | ||
| 865 | + suMoney: | ||
| 866 | + type: number | ||
| 867 | + description: 奖励素币 | ||
| 868 | + format: double | ||
| 869 | + taskDescription: | ||
| 870 | + type: string | ||
| 871 | + description: 任务描述 | ||
| 872 | + taskName: | ||
| 873 | + type: string | ||
| 874 | + description: 任务名称 | ||
| 875 | + taskNature: | ||
| 876 | + type: string | ||
| 877 | + description: 任务性质 | ||
| 878 | + taskPictureUrls: | ||
| 879 | + type: array | ||
| 880 | + items: | ||
| 881 | + type: string | ||
| 882 | + description: 任务图片URL列表 | ||
| 883 | + TaskUpdateTaskResponseBody: | ||
| 884 | + title: 'Mediatype identifier: TaskUpdateTaskResponseBody' | ||
| 885 | + type: object | ||
| 886 | + properties: | ||
| 887 | + task: | ||
| 888 | + $ref: '#/definitions/taskResponseBody' | ||
| 889 | + bidInfoResponseBody: | ||
| 890 | + title: bidInfoResponseBody | ||
| 891 | + type: object | ||
| 892 | + properties: | ||
| 893 | + bidEndTime: | ||
| 894 | + type: string | ||
| 895 | + description: 竞标结束时间 | ||
| 896 | + required: | ||
| 897 | + - bidEndTime | ||
| 898 | + bidStartTime: | ||
| 899 | + type: string | ||
| 900 | + description: 竞标开始时间 | ||
| 901 | + required: | ||
| 902 | + - bidStartTime | ||
| 903 | + bidderInfos: | ||
| 904 | + type: array | ||
| 905 | + items: | ||
| 906 | + $ref: '#/definitions/bidderInfoResponseBody' | ||
| 907 | + description: 竞标人员列表 | ||
| 908 | + successfulBidder: | ||
| 909 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 910 | + winBidTime: | ||
| 911 | + type: string | ||
| 912 | + description: 中标时间 | ||
| 913 | + required: | ||
| 914 | + - winBidTime | ||
| 915 | + description: 竞标任务信息 | ||
| 916 | + bidderInfoResponseBody: | ||
| 917 | + title: bidderInfoResponseBody | ||
| 918 | + type: object | ||
| 919 | + properties: | ||
| 920 | + bidTime: | ||
| 921 | + type: string | ||
| 922 | + description: 竞标时间 | ||
| 923 | + required: | ||
| 924 | + - bidTime | ||
| 925 | + bidder: | ||
| 926 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 927 | + description: 竞标人员信息 | ||
| 928 | + employeeInfoRequestBody: | ||
| 929 | + title: employeeInfoRequestBody | ||
| 930 | + type: object | ||
| 931 | + properties: | ||
| 932 | + employeeAccount: | ||
| 933 | + type: string | ||
| 934 | + description: 员工账号 | ||
| 935 | + employeeName: | ||
| 936 | + type: string | ||
| 937 | + description: 员工姓名 | ||
| 938 | + required: | ||
| 939 | + - employeeName | ||
| 940 | + uid: | ||
| 941 | + type: integer | ||
| 942 | + description: 统一用户UID | ||
| 943 | + required: | ||
| 944 | + - uid | ||
| 945 | + description: 员工信息 | ||
| 946 | + employeeInfoResponseBody: | ||
| 947 | + title: employeeInfoResponseBody | ||
| 948 | + type: object | ||
| 949 | + properties: | ||
| 950 | + employeeAccount: | ||
| 951 | + type: string | ||
| 952 | + description: 员工账号 | ||
| 953 | + employeeName: | ||
| 954 | + type: string | ||
| 955 | + description: 员工姓名 | ||
| 956 | + required: | ||
| 957 | + - employeeName | ||
| 958 | + uid: | ||
| 959 | + type: integer | ||
| 960 | + description: 统一用户UID | ||
| 961 | + required: | ||
| 962 | + - uid | ||
| 963 | + description: 员工信息 | ||
| 964 | + employeeResponseBody: | ||
| 965 | + title: employeeResponseBody | ||
| 966 | + type: object | ||
| 967 | + properties: | ||
| 968 | + companyId: | ||
| 969 | + type: integer | ||
| 970 | + description: 公司ID | ||
| 971 | + required: | ||
| 972 | + - companyId | ||
| 973 | + employeeId: | ||
| 974 | + type: integer | ||
| 975 | + description: 员工ID | ||
| 976 | + required: | ||
| 977 | + - employeeId | ||
| 978 | + employeeInfo: | ||
| 979 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 980 | + status: | ||
| 981 | + type: integer | ||
| 982 | + description: 员工状态(启用或者禁用) | ||
| 983 | + format: int64 | ||
| 984 | + suMoney: | ||
| 985 | + type: number | ||
| 986 | + description: 当前素币 | ||
| 987 | + required: | ||
| 988 | + - suMoney | ||
| 989 | + description: 员工 | ||
| 990 | + referenceResourceItemRequestBody: | ||
| 991 | + title: referenceResourceItemRequestBody | ||
| 992 | + type: object | ||
| 993 | + properties: | ||
| 994 | + serialNumber: | ||
| 995 | + type: integer | ||
| 996 | + description: 编号 | ||
| 997 | + required: | ||
| 998 | + - serialNumber | ||
| 999 | + title: | ||
| 1000 | + type: string | ||
| 1001 | + description: 标题 | ||
| 1002 | + required: | ||
| 1003 | + - title | ||
| 1004 | + description: 引用资源项 | ||
| 1005 | + referenceResourceItemResponseBody: | ||
| 1006 | + title: referenceResourceItemResponseBody | ||
| 1007 | + type: object | ||
| 1008 | + properties: | ||
| 1009 | + serialNumber: | ||
| 1010 | + type: integer | ||
| 1011 | + description: 编号 | ||
| 1012 | + required: | ||
| 1013 | + - serialNumber | ||
| 1014 | + title: | ||
| 1015 | + type: string | ||
| 1016 | + description: 标题 | ||
| 1017 | + required: | ||
| 1018 | + - title | ||
| 1019 | + description: 引用资源项 | ||
| 1020 | + referenceResourceRequestBody: | ||
| 1021 | + title: referenceResourceRequestBody | ||
| 1022 | + type: object | ||
| 1023 | + properties: | ||
| 1024 | + referenceResourceItems: | ||
| 1025 | + type: array | ||
| 1026 | + items: | ||
| 1027 | + $ref: '#/definitions/referenceResourceItemRequestBody' | ||
| 1028 | + description: 引用资源项列表 | ||
| 1029 | + required: | ||
| 1030 | + - referenceResourceItems | ||
| 1031 | + referenceResourceType: | ||
| 1032 | + type: integer | ||
| 1033 | + description: 引用类型 | ||
| 1034 | + required: | ||
| 1035 | + - referenceResourceType | ||
| 1036 | + description: 引用资源 | ||
| 1037 | + referenceResourceResponseBody: | ||
| 1038 | + title: referenceResourceResponseBody | ||
| 1039 | + type: object | ||
| 1040 | + properties: | ||
| 1041 | + referenceResourceItems: | ||
| 1042 | + type: array | ||
| 1043 | + items: | ||
| 1044 | + $ref: '#/definitions/referenceResourceItemResponseBody' | ||
| 1045 | + description: 引用资源项列表 | ||
| 1046 | + required: | ||
| 1047 | + - referenceResourceItems | ||
| 1048 | + referenceResourceType: | ||
| 1049 | + type: integer | ||
| 1050 | + description: 引用类型 | ||
| 1051 | + required: | ||
| 1052 | + - referenceResourceType | ||
| 1053 | + description: 引用资源 | ||
| 1054 | + robInfoResponseBody: | ||
| 1055 | + title: robInfoResponseBody | ||
| 1056 | + type: object | ||
| 1057 | + properties: | ||
| 1058 | + receiveTime: | ||
| 1059 | + type: string | ||
| 1060 | + description: 领取时间 | ||
| 1061 | + required: | ||
| 1062 | + - receiveTime | ||
| 1063 | + receiver: | ||
| 1064 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 1065 | + description: 抢单任务信息 | ||
| 1066 | + taskPercentageItemRequestBody: | ||
| 1067 | + title: taskPercentageItemRequestBody | ||
| 1068 | + type: object | ||
| 1069 | + properties: | ||
| 1070 | + contributor: | ||
| 1071 | + $ref: '#/definitions/employeeInfoRequestBody' | ||
| 1072 | + percentage: | ||
| 1073 | + type: integer | ||
| 1074 | + description: 任务贡献占比 | ||
| 1075 | + required: | ||
| 1076 | + - percentage | ||
| 1077 | + description: 任务贡献占比项 | ||
| 1078 | + taskPercentageItemResponseBody: | ||
| 1079 | + title: taskPercentageItemResponseBody | ||
| 1080 | + type: object | ||
| 1081 | + properties: | ||
| 1082 | + contributor: | ||
| 1083 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 1084 | + percentage: | ||
| 1085 | + type: integer | ||
| 1086 | + description: 任务贡献占比 | ||
| 1087 | + required: | ||
| 1088 | + - percentage | ||
| 1089 | + description: 任务贡献占比项 | ||
| 1090 | + taskResponseBody: | ||
| 1091 | + title: taskResponseBody | ||
| 1092 | + type: object | ||
| 1093 | + properties: | ||
| 1094 | + acceptanceStandard: | ||
| 1095 | + type: string | ||
| 1096 | + description: 验收标准 | ||
| 1097 | + required: | ||
| 1098 | + - acceptanceStandard | ||
| 1099 | + bidInfo: | ||
| 1100 | + $ref: '#/definitions/bidInfoResponseBody' | ||
| 1101 | + companyId: | ||
| 1102 | + type: integer | ||
| 1103 | + description: 公司ID | ||
| 1104 | + required: | ||
| 1105 | + - companyId | ||
| 1106 | + createTime: | ||
| 1107 | + type: string | ||
| 1108 | + description: 创建时间 | ||
| 1109 | + required: | ||
| 1110 | + - createTime | ||
| 1111 | + customerValue: | ||
| 1112 | + type: array | ||
| 1113 | + items: | ||
| 1114 | + type: string | ||
| 1115 | + description: 客户价值列表 | ||
| 1116 | + required: | ||
| 1117 | + - customerValue | ||
| 1118 | + isRewardTake: | ||
| 1119 | + type: boolean | ||
| 1120 | + description: 是否悬赏任务 | ||
| 1121 | + participators: | ||
| 1122 | + type: array | ||
| 1123 | + items: | ||
| 1124 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 1125 | + description: 任务参与者列表 | ||
| 1126 | + referenceResource: | ||
| 1127 | + $ref: '#/definitions/referenceResourceResponseBody' | ||
| 1128 | + releaseTime: | ||
| 1129 | + type: string | ||
| 1130 | + description: 发布时间 | ||
| 1131 | + format: datetime | ||
| 1132 | + robInfo: | ||
| 1133 | + $ref: '#/definitions/robInfoResponseBody' | ||
| 1134 | + solvePictureUrls: | ||
| 1135 | + type: array | ||
| 1136 | + items: | ||
| 1137 | + type: string | ||
| 1138 | + description: 解决图片URL列表 | ||
| 1139 | + solveReport: | ||
| 1140 | + type: string | ||
| 1141 | + description: 解决报告 | ||
| 1142 | + sponsor: | ||
| 1143 | + $ref: '#/definitions/employeeInfoResponseBody' | ||
| 1144 | + suMoney: | ||
| 1145 | + type: number | ||
| 1146 | + description: 奖励素币 | ||
| 1147 | + required: | ||
| 1148 | + - suMoney | ||
| 1149 | + taskDescription: | ||
| 1150 | + type: string | ||
| 1151 | + description: 任务描述 | ||
| 1152 | + required: | ||
| 1153 | + - taskDescription | ||
| 1154 | + taskId: | ||
| 1155 | + type: integer | ||
| 1156 | + description: 任务ID | ||
| 1157 | + required: | ||
| 1158 | + - taskId | ||
| 1159 | + taskName: | ||
| 1160 | + type: string | ||
| 1161 | + description: 任务名称 | ||
| 1162 | + required: | ||
| 1163 | + - taskName | ||
| 1164 | + taskNature: | ||
| 1165 | + type: string | ||
| 1166 | + description: 任务性质 | ||
| 1167 | + required: | ||
| 1168 | + - taskNature | ||
| 1169 | + taskPercentage: | ||
| 1170 | + type: array | ||
| 1171 | + items: | ||
| 1172 | + $ref: '#/definitions/taskPercentageItemResponseBody' | ||
| 1173 | + description: 任务贡献占比 | ||
| 1174 | + taskPictureUrls: | ||
| 1175 | + type: array | ||
| 1176 | + items: | ||
| 1177 | + type: string | ||
| 1178 | + description: 任务图片URL列表 | ||
| 1179 | + taskStatus: | ||
| 1180 | + type: integer | ||
| 1181 | + description: 任务状态 | ||
| 1182 | + required: | ||
| 1183 | + - taskStatus | ||
| 1184 | + taskType: | ||
| 1185 | + type: integer | ||
| 1186 | + description: 任务类型 | ||
| 1187 | + required: | ||
| 1188 | + - taskType | ||
| 1189 | + description: 任务 |
| 1 | package main | 1 | package main |
| 2 | 2 | ||
| 3 | -import "fmt" | 3 | +import ( |
| 4 | + "github.com/astaxie/beego" | ||
| 5 | + _ "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/infrastructure/pg" | ||
| 6 | + _ "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/port/beego" | ||
| 7 | +) | ||
| 4 | 8 | ||
| 5 | func main() { | 9 | func main() { |
| 6 | - fmt.Print("") | 10 | + beego.Run() |
| 7 | } | 11 | } |
| @@ -45,3 +45,11 @@ func CreateChooseSuccessfulBidderService(options map[string]interface{}) (servic | @@ -45,3 +45,11 @@ func CreateChooseSuccessfulBidderService(options map[string]interface{}) (servic | ||
| 45 | } | 45 | } |
| 46 | return domainService.NewChooseSuccessfulBidderService(transactionContext) | 46 | return domainService.NewChooseSuccessfulBidderService(transactionContext) |
| 47 | } | 47 | } |
| 48 | + | ||
| 49 | +func CreateApplyCompleteTaskService(options map[string]interface{}) (service.ApplyCompleteTaskService, error) { | ||
| 50 | + var transactionContext *pgTransaction.TransactionContext | ||
| 51 | + if value, ok := options["transactionContext"]; ok { | ||
| 52 | + transactionContext = value.(*pgTransaction.TransactionContext) | ||
| 53 | + } | ||
| 54 | + return domainService.NewApplyCompleteTaskService(transactionContext) | ||
| 55 | +} |
| @@ -130,10 +130,22 @@ func (taskService *TaskService) ApplyCompleteTask(applyCompleteTaskCommand *comm | @@ -130,10 +130,22 @@ func (taskService *TaskService) ApplyCompleteTask(applyCompleteTaskCommand *comm | ||
| 130 | defer func() { | 130 | defer func() { |
| 131 | transactionContext.RollbackTransaction() | 131 | transactionContext.RollbackTransaction() |
| 132 | }() | 132 | }() |
| 133 | - if err := transactionContext.CommitTransaction(); err != nil { | ||
| 134 | - return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 133 | + var applyCompleteTaskService service.ApplyCompleteTaskService |
| 134 | + if value, err := factory.CreateApplyCompleteTaskService(map[string]interface{}{ | ||
| 135 | + "transactionContext": transactionContext, | ||
| 136 | + }); err != nil { | ||
| 137 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 138 | + } else { | ||
| 139 | + applyCompleteTaskService = value | ||
| 140 | + } | ||
| 141 | + if task, err := applyCompleteTaskService.ApplyComplete(applyCompleteTaskCommand.TaskId, applyCompleteTaskCommand.Receiver); err != nil { | ||
| 142 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 143 | + } else { | ||
| 144 | + if err := transactionContext.CommitTransaction(); err != nil { | ||
| 145 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 146 | + } | ||
| 147 | + return task, nil | ||
| 135 | } | 148 | } |
| 136 | - return nil, nil | ||
| 137 | } | 149 | } |
| 138 | 150 | ||
| 139 | // 发布任务 | 151 | // 发布任务 |
pkg/domain/service/apply_complete_task.go
0 → 100644
| @@ -3,5 +3,5 @@ package service | @@ -3,5 +3,5 @@ package service | ||
| 3 | import "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/domain" | 3 | import "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/domain" |
| 4 | 4 | ||
| 5 | type RobTaskService interface { | 5 | type RobTaskService interface { |
| 6 | - Rob(taskId int64, bidderUid int64) (*domain.Task, error) | 6 | + Rob(taskId int64, receiverUid int64) (*domain.Task, error) |
| 7 | } | 7 | } |
| 1 | +package domain_service | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "fmt" | ||
| 5 | + coreDomain "github.com/linmadan/egglib-go/core/domain" | ||
| 6 | + pgTransaction "github.com/linmadan/egglib-go/transaction/pg" | ||
| 7 | + "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/domain" | ||
| 8 | + "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/infrastructure/repository" | ||
| 9 | +) | ||
| 10 | + | ||
| 11 | +type ApplyCompleteTaskService struct { | ||
| 12 | + coreDomain.BaseEventPublisher | ||
| 13 | + transactionContext *pgTransaction.TransactionContext | ||
| 14 | +} | ||
| 15 | + | ||
| 16 | +func (service *ApplyCompleteTaskService) ApplyComplete(taskId int64, receiverUid int64) (*domain.Task, error) { | ||
| 17 | + var employeeRepository domain.EmployeeRepository | ||
| 18 | + var taskRepository domain.TaskRepository | ||
| 19 | + if repository, err := repository.NewEmployeeRepository(service.transactionContext); err != nil { | ||
| 20 | + return nil, err | ||
| 21 | + } else { | ||
| 22 | + employeeRepository = repository | ||
| 23 | + } | ||
| 24 | + if repository, err := repository.NewTaskRepository(service.transactionContext); err != nil { | ||
| 25 | + return nil, err | ||
| 26 | + } else { | ||
| 27 | + taskRepository = repository | ||
| 28 | + } | ||
| 29 | + receiver, err := employeeRepository.FindOne(map[string]interface{}{ | ||
| 30 | + "uid": receiverUid, | ||
| 31 | + }) | ||
| 32 | + if err != nil { | ||
| 33 | + return nil, err | ||
| 34 | + } | ||
| 35 | + if receiver == nil { | ||
| 36 | + return nil, fmt.Errorf("无效的领取人") | ||
| 37 | + } | ||
| 38 | + task, err := taskRepository.FindOne(map[string]interface{}{ | ||
| 39 | + "taskId": taskId, | ||
| 40 | + }) | ||
| 41 | + if err != nil { | ||
| 42 | + return nil, err | ||
| 43 | + } | ||
| 44 | + if task == nil { | ||
| 45 | + return nil, fmt.Errorf("无效的任务") | ||
| 46 | + } | ||
| 47 | + if task.TaskType == domain.TASK_TYPE_ROB { | ||
| 48 | + if receiver.EmployeeInfo.Uid != task.RobInfo.Receiver.Uid { | ||
| 49 | + return nil, fmt.Errorf("无法申请完成别人领取的任务") | ||
| 50 | + } | ||
| 51 | + } | ||
| 52 | + if task.TaskType == domain.TASK_TYPE_BID { | ||
| 53 | + if receiver.EmployeeInfo.Uid != task.BidInfo.SuccessfulBidder.Uid { | ||
| 54 | + return nil, fmt.Errorf("无法申请完成别人领取的任务") | ||
| 55 | + } | ||
| 56 | + } | ||
| 57 | + if err := task.ApplyComplete(); err != nil { | ||
| 58 | + return nil, err | ||
| 59 | + } | ||
| 60 | + if task, err := taskRepository.Save(task); err != nil { | ||
| 61 | + return nil, err | ||
| 62 | + } else { | ||
| 63 | + return task, nil | ||
| 64 | + } | ||
| 65 | +} | ||
| 66 | + | ||
| 67 | +func NewApplyCompleteTaskService(transactionContext *pgTransaction.TransactionContext) (*ApplyCompleteTaskService, error) { | ||
| 68 | + if transactionContext == nil { | ||
| 69 | + return nil, fmt.Errorf("transactionContext参数不能为nil") | ||
| 70 | + } else { | ||
| 71 | + return &ApplyCompleteTaskService{ | ||
| 72 | + transactionContext: transactionContext, | ||
| 73 | + }, nil | ||
| 74 | + } | ||
| 75 | +} |
| 1 | package task | 1 | package task |
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | + "github.com/go-pg/pg" | ||
| 5 | + "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/domain" | ||
| 4 | "net/http" | 6 | "net/http" |
| 7 | + "time" | ||
| 5 | 8 | ||
| 6 | "github.com/gavv/httpexpect" | 9 | "github.com/gavv/httpexpect" |
| 7 | - "github.com/go-pg/pg" | ||
| 8 | . "github.com/onsi/ginkgo" | 10 | . "github.com/onsi/ginkgo" |
| 9 | . "github.com/onsi/gomega" | 11 | . "github.com/onsi/gomega" |
| 10 | pG "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/infrastructure/pg" | 12 | pG "gitlab.fjmaimaimai.com/linmadan/mmm-worth/pkg/infrastructure/pg" |
| 11 | ) | 13 | ) |
| 12 | 14 | ||
| 13 | var _ = Describe("申请完成任务", func() { | 15 | var _ = Describe("申请完成任务", func() { |
| 14 | - var taskId int64 | ||
| 15 | - BeforeEach(func() { | ||
| 16 | - _, err := pG.DB.QueryOne( | ||
| 17 | - pg.Scan(&taskId), | ||
| 18 | - "INSERT INTO tasks (task_id, company_id, task_name, task_type, sponsor, task_status, reference_resource, customer_value, task_nature, su_money, acceptance_standard, task_description, task_picture_urls, is_reward_take, rob_info, bid_info, participators, task_percentage, solve_report, solve_picture_urls, create_time, release_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING id", | ||
| 19 | - "testTaskId", "testCompanyId", "testTaskName", "testTaskType", "testSponsor", "testTaskStatus", "testReferenceResource", "testCustomerValue", "testTaskNature", "testSuMoney", "testAcceptanceStandard", "testTaskDescription", "testTaskPictureUrls", "testIsRewardTake", "testRobInfo", "testBidInfo", "testParticipators", "testTaskPercentage", "testSolveReport", "testSolvePictureUrls", "testCreateTime", "testReleaseTime") | ||
| 20 | - Expect(err).NotTo(HaveOccurred()) | ||
| 21 | - }) | ||
| 22 | Describe("申请完成任务", func() { | 16 | Describe("申请完成任务", func() { |
| 23 | - Context("", func() { | ||
| 24 | - It("", func() { | 17 | + Context("领取人对进行中的任务进行抢单", func() { |
| 18 | + BeforeEach(func() { | ||
| 19 | + dayAfter, _ := time.ParseDuration("72h") | ||
| 20 | + _, err := pG.DB.QueryOne( | ||
| 21 | + pg.Scan(), | ||
| 22 | + "INSERT INTO tasks (id, company_id, task_name, task_type, sponsor, task_status, reference_resource, customer_value, task_nature, su_money, acceptance_standard, task_description, task_picture_urls, is_reward_take, participators, task_percentage, solve_report, solve_picture_urls, receiver_uid, create_time, release_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", | ||
| 23 | + 1, 101, "抢单任务1", 1, &domain.EmployeeInfo{ | ||
| 24 | + Uid: 2499036607974745088, | ||
| 25 | + }, 3, "null", pg.Array([]string{"口感", "便利", "品牌", "售后服务"}), "面", 1000.00, "验收标准1", "任务描述1", pg.Array([]string{}), true, []*domain.EmployeeInfo{ | ||
| 26 | + { | ||
| 27 | + Uid: 2499036607974745077, | ||
| 28 | + }, | ||
| 29 | + { | ||
| 30 | + Uid: 2499036607974745066, | ||
| 31 | + }, | ||
| 32 | + }, "null", "", pg.Array([]string{}), 2499036607974745099, time.Now(), time.Now().Add(dayAfter)) | ||
| 33 | + Expect(err).NotTo(HaveOccurred()) | ||
| 34 | + _, err1 := pG.DB.QueryOne( | ||
| 35 | + pg.Scan(), | ||
| 36 | + "INSERT INTO employees (id, company_id, uid, employee_name, employee_account, su_money) VALUES (?, ?, ?, ?, ?, ?)", | ||
| 37 | + 1, 101, 2499036607974745088, "testEmployeeName", "testEmployeeAccount", 0) | ||
| 38 | + Expect(err1).NotTo(HaveOccurred()) | ||
| 39 | + _, err2 := pG.DB.QueryOne( | ||
| 40 | + pg.Scan(), | ||
| 41 | + "INSERT INTO employees (id, company_id, uid, employee_name, employee_account, su_money) VALUES (?, ?, ?, ?, ?, ?)", | ||
| 42 | + 2, 101, 2499036607974745099, "testEmployeeName", "testEmployeeAccount", 0) | ||
| 43 | + Expect(err2).NotTo(HaveOccurred()) | ||
| 44 | + _, err3 := pG.DB.QueryOne( | ||
| 45 | + pg.Scan(), | ||
| 46 | + "INSERT INTO rob_infos (id, task_id ,receiver) VALUES (?, ?, ?)", | ||
| 47 | + 1, 1, &domain.EmployeeInfo{ | ||
| 48 | + Uid: 2499036607974745099, | ||
| 49 | + }) | ||
| 50 | + Expect(err3).NotTo(HaveOccurred()) | ||
| 51 | + }) | ||
| 52 | + It("申请完成成功", func() { | ||
| 25 | httpExpect := httpexpect.New(GinkgoT(), server.URL) | 53 | httpExpect := httpexpect.New(GinkgoT(), server.URL) |
| 26 | body := map[string]interface{}{ | 54 | body := map[string]interface{}{ |
| 27 | - "receiver": "int64", | 55 | + "receiver": 2499036607974745099, |
| 28 | } | 56 | } |
| 29 | - httpExpect.POST("/tasks/{taskId}/apply-complete"). | 57 | + httpExpect.POST("/tasks/1/apply-complete"). |
| 30 | WithJSON(body). | 58 | WithJSON(body). |
| 31 | Expect(). | 59 | Expect(). |
| 32 | Status(http.StatusOK). | 60 | Status(http.StatusOK). |
| @@ -34,12 +62,21 @@ var _ = Describe("申请完成任务", func() { | @@ -34,12 +62,21 @@ var _ = Describe("申请完成任务", func() { | ||
| 34 | Object(). | 62 | Object(). |
| 35 | ContainsKey("code").ValueEqual("code", 0). | 63 | ContainsKey("code").ValueEqual("code", 0). |
| 36 | ContainsKey("msg").ValueEqual("msg", "ok"). | 64 | ContainsKey("msg").ValueEqual("msg", "ok"). |
| 37 | - ContainsKey("data").Value("data").Object() | 65 | + ContainsKey("data").Value("data").Object(). |
| 66 | + ContainsKey("taskStatus").ValueEqual("taskStatus", 4) | ||
| 38 | }) | 67 | }) |
| 39 | }) | 68 | }) |
| 40 | }) | 69 | }) |
| 41 | AfterEach(func() { | 70 | AfterEach(func() { |
| 42 | _, err := pG.DB.Exec("DELETE FROM tasks WHERE true") | 71 | _, err := pG.DB.Exec("DELETE FROM tasks WHERE true") |
| 43 | Expect(err).NotTo(HaveOccurred()) | 72 | Expect(err).NotTo(HaveOccurred()) |
| 73 | + _, err1 := pG.DB.Exec("DELETE FROM bid_infos WHERE true") | ||
| 74 | + Expect(err1).NotTo(HaveOccurred()) | ||
| 75 | + _, err2 := pG.DB.Exec("DELETE FROM bidder_infos WHERE true") | ||
| 76 | + Expect(err2).NotTo(HaveOccurred()) | ||
| 77 | + _, err3 := pG.DB.Exec("DELETE FROM employees WHERE true") | ||
| 78 | + Expect(err3).NotTo(HaveOccurred()) | ||
| 79 | + _, err4 := pG.DB.Exec("DELETE FROM rob_infos WHERE true") | ||
| 80 | + Expect(err4).NotTo(HaveOccurred()) | ||
| 44 | }) | 81 | }) |
| 45 | }) | 82 | }) |
-
请 注册 或 登录 后发表评论