# 工作历接口文档 # 工作历作息时间管理 ## 工作历作息时间查询 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/queryWorkCalendarDateList Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101050029", // 项目ID ,必填 "ruleId":"WR1335232948013666305", //规则ID,选填 "calendarId":"WC1335228701901586434", // 工作历ID,选填 "objId":"Bd440307000375f48be8ed6b47189da6f2db66fd3a65", //对象ID,选填 "calendarName": "开闭店工作历类型", // 工作历类型名称,选填 "dictType": "shop", // 约定的类型 "dictTypes": [ //批量时查询时字段 "shop" ] "dictCode": [ // 约定的编码,不填就是此类型下所有的 2-开店时间;3-商业闭店时间;4-娱乐闭店时间 "2-dOfW", "3-dOfW", "4-dOfW" ] "workDateStart":"20201205", //需要查询的时间段范围的日期开始,必填 "workDateEnd":"20201207" //需要查询的时间段范围的日期结束,必填 } ``` 返回: ``` { "content": [ { "timeTable": [], "workDate": "20201205" }, { "timeTable": [], "workDate": "20201206" }, { "timeTable": [ { "calendarDesc": "开闭店工作历类型", "calendarId": "WC1335228701901586434", "calendarName": "开闭店工作历类型", "customFlag":"0", //0-非自定义,1-自定义 "dictCode": "4", "dictType": "shop", "projectId": "Pj1101050029", "ruleId": "WR1335232948013666305", "workDate": "20201207", "workTime": "230000" } ], "workDate": "20201207" } ], "count": 3, "respCode": "00000", "respMsg": "success" } ``` ## 批量添加工作历作息时间信息 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/createCustomCalendarDate Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101081009", // 项目ID ,必填 "batchInfo":[ { "calendarId":"WC1335782235639480322", // 工作历ID,必填 "dictType": "shop", // 约定的类型,必填 "dictCode": "2", // 约定的编码,必填 "workDate":"20201214", // 作息日期YYYYMMDD,必填 "workTime":"220000" // 作息时间点HHMMSS,必填 } ] } ``` 返回: ``` { "respCode": "00000", "respMsg": "添加成功" } ``` ## 多时间段添加工作历作息时间信息 **说明:每次都是根据dictType先删再建** ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/createCustomCalendarMoreDate Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101081009", // 项目ID ,必填 "calendarId":"WC1335782235639480322", // 工作历ID,必填 "dictType": "shop", // 约定的类型,必填 "dictCode": "2", // 约定的编码,选填 "workDateStart":"20201201", // 开始作息日期YYYYMMDD,必填 "workDateEnd":"20201215", // 结束作息日期YYYYMMDD,必填 "timetable":[ "01:00-02:00", "05:30-06:30" ] } ``` 返回: ``` { "respCode": "00000", "respMsg": "添加成功" } ``` ## 定义工作历标签属性 ``` URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/updateCalendarDateAttribute Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode":"WD", // 集团编码,必填 "labels": [ { "userId": "QKZZ", // 用户ID ,必填 "projectId": "Pj1209010205", // 项目ID ,必填 "isUpdate":true, // 是否在创建或更新之前,优先删除此段日期下已存在的标签属性,默认true "isDelete":false, // 是否只删除此段日期下已存在的标签属性,默认false "calendarId": "WC1367022614879485953", //工作历ID,必填 "labelDateStart": "20210303", //标签所属开始日期 YYYYMMdd,必填 "labelDateEnd": "20210331", //标签所属开始日期 YYYYMMdd,必填 "dictType": "ServerNum", //来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填; "dictCode": "ServerNum-1", //来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填; "diyLabel":"0", //是否自定义,0-非自定义,1-自定义; "diyValue":["小明", "小红"] //自定义的时候,必填 } ], "times": [ { "userId":"QKZZ", // 用户ID ,必填 "projectId":"Pj1101081009", // 项目ID ,必填 "isDelete":false, // 是否只删除此段日期下已存在的作息时间属性,默认false "calendarId":"WC1335782235639480322", // 工作历ID,必填 "dictType": "shop", // 约定的类型,必填 "dictCode": "2", // 约定的编码,选填 "workDateStart":"20201201", // 开始作息日期YYYYMMDD,必填 "workDateEnd":"20201215", // 结束作息日期YYYYMMDD,必填 "timetable":[ // 作息时间点集合timetable,isDelete true-无意义,false-必填 "01:00-02:00", "05:30-06:30" ] } ] } ``` 返回: ``` { "respCode": "00000", "respMsg": "添加成功" } ``` ## 更新工作历作息时间 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/updateCustomCalendarDate Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "projectId":"Pj1101081009", // 项目ID ,必填 "groupCode":"WD", // 集团编码,必填 "batchInfo":[ { "id":"WD1338066552063373313", // 作息时间ID,必填 "calendarId":"WC1335782235639480322", // 工作历ID,必填 "dictType": "shop", // 约定的类型,必填 "dictCode": "2", // 约定的编码,必填 "workDate":"20201214", //作息日期YYYYMMDD,必填 "workTime":"230000" //作息时间点HHMMSS,必填 } ] } ``` 返回: ``` { "respCode": "00000", "respMsg": "更新成功" } ``` ## 删除工作历作息时间 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/deleteCustomCalendarDate Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101050029", // 项目ID ,必填 "id":"WD1335560618685612034", // 作息时间ID,选填 "dictType": "shop", // 约定的类型,必填 "dictCode": [ // 约定的编码,选填,不填为删除dictType下所有的code定义的作息时间信息 "3" ], "workDateStart":"20201201", // 开始作息日期YYYYMMDD,必填 "workDateEnd":"20201215" // 结束作息日期YYYYMMDD,必填 } ``` 返回: ``` { "respCode": "00000", "respMsg": "删除成功" } ``` # 工作历类型管理 ## 工作历类型查询 URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/queryWorkCalendarList Method:POST Header:Content-Type=application/json 请求: { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101050029", // 项目ID ,必填 "id":"WC1335218584007233538", // 工作历ID,选填 "calendarName":"开闭店", //工作历名称,选填 "objId":"Bd440307000375f48be8ed6b47189da6f2db66fd3a65" //对象ID,查询出此对象对应的工作历ID,选填,和ID同时存在时,以id为准,objId失效 } 返回: { "content": [ { "calendarDesc": "开闭店工作历类型", "calendarName": "开闭店工作历类型", "createTime": "20201205214452", "delFlag": "0", "groupCode":"WD", "id": "WC1335218584007233538", "projectId": "Pj1101050029", "updateTime": "20201205214458", "updateUser": "QKZZ" } ], "count": 1, "respCode": "00000", "respMsg": "success" } ## 工作历类型名称重复性校验 URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/validCalendarName Method:POST Header:Content-Type=application/json 请求: { "id": "WC1335218584007233538", // 工作历类型ID,当为更新的时候,必填 "groupCode": "WD", // 集团编码,必填 "projectId": "Pj1101051130", //项目ID,必填 "calendarName": "乾坤测试", // 工作历类型名称 ,必填 "userId": "b9df7de50df148d3be69bcebab30c396" // 用户ID,必填,不做为sql条件 } 返回: // 验证通过,可以使用 { "respCode": "00000", // 00000 代表可用 "respMsg": "可用" } // 验证不通过,名称重复 { "respCode": "C0341", // C0341 不可用 "respMsg": "名称重复" } ## 创建工作历类型 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/createWorkCalendar Method:POST Header:Content-Type=application/json ``` 请求: ``` { "calendarDesc": "开闭店工作历类型", // 工作历类型描述 "groupCode":"WD", // 集团编码,必填 "calendarName": "开闭店工作历类型", // 工作历类型名称,必填,项目下唯一 "userId":"QKZZ", // 用户ID ,必填,不做为sql条件 "projectId":"Pj1101050029", // 项目ID,必填,作为sql条件 "objIds":[ // 对象ID集合,选填 "Bd440307000375f48be8ed6b47189da6f2db66fd3a65" ] } ``` 返回: ``` { "content": "WC1335207337782165505", // 工作历类型ID "respCode": "00000", "respMsg": "新增成功" } ``` ## 根据模板创建工作历类型 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/createWorkCalendarFromId Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode":"WD", // 集团编码,必填 "calendarDesc": "开闭店工作历类型", // 工作历类型描述 "calendarName": "开闭店工作历类型", // 工作历类型名称,必填,项目下唯一 "fromId":"WC1335207337782165503", //工作历来源ID,必填 "userId":"QKZZ", // 用户ID ,必填,不做为sql条件 "projectId":"Pj1101050029", // 项目ID,必填,作为sql条件 "objIds":[ // 对象ID集合,选填 "Bd440307000375f48be8ed6b47189da6f2db66fd3a65" ] } ``` 返回: ``` { "content": "WC1335207337782165505", // 工作历类型ID "respCode": "00000", "respMsg": "新增成功" } ``` ## 更新工作历类型 URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/updateWorkCalendar Method:POST Header:Content-Type=application/json 请求: { "groupCode":"WD", // 集团编码,必填 "id":"WC1335207337782165505", // 工作历类型ID "calendarDesc": "开闭店工作历类型", // 工作历类型描述 "calendarName": "开闭店工作历类型", // 工作历类型名称 "userId":"QKZZ", // 用户ID "projectId":"Pj1101050029" // 项目ID } 返回: { "respCode": "00000", "respMsg": "更新成功" } ## 删除工作历类型 **说明:级联删除规则信息** URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/deleteWorkCalendar Method:POST Header:Content-Type=application/json 请求: { "groupCode":"WD", // 集团编码,必填 "id":"WC1335207337782165505", // 工作历类型ID "userId":"QKZZ", // 用户ID "projectId":"Pj1101050029" // 项目ID } 返回: { "respCode": "00000", "respMsg": "删除成功" } # 工作历规则管理 ## 工作历规则查询 URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/queryWorkCalendarRuleList Method:POST Header:Content-Type=application/json 请求: { "groupCode":"WD", // 集团编码,必填 "userId":"QKZZ", // 用户ID ,必填 "projectId":"Pj1101050029", // 项目ID ,必填 "id":"WR1335224788167286786", //规则ID,选填 "calendarId":"WC1335218584007233538", // 工作历ID,选填 "dictType":"shop", //字典类型,选填 "dictCode": [ // 约定的编码,不填就是此类型下所有的 2-开店时间;3-商业闭店时间;4-娱乐闭店时间 "2-dOfW", "3-dOfW", "4-dOfW" ] } 返回: { "content": [ { "calendarId": "WC1335218584007233538", "createTime": "20201205220931", "delFlag": "0", "dictCode": "4", "dictType": "shop", "id": "WR1335224788167286786", "projectId": "Pj1101050029", "ruleDateEnd": "20300101", "ruleDateStart": "20200101", "ruleFlag": "0", "ruleTime": "230000", "updateTime": "20201205220931", "updateUser": "QKZZ" } ], "count": 1, "respCode": "00000", "respMsg": "success" } ## 创建工作历规则 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/createWorkCalendarRule Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101081009", // 项目ID ,必填 "isDelete":false, //是否添加时,优先删除此工作历下已存在的对应dictType的规则,默认false,true删除,false或不填不删除 "batchInfo":[ { "calendarId":"WC1335782235639480322", // 工作历ID ,必填 "dictType":"shop", //类型 ,必填 "dictCode":"2-dOfW", //数据code ,选填 dOfW-周 "ruleDateStart":"20200101", //规则生效开始日期 YYYYMMDD ,必填 "ruleDateEnd":"20300101", //规则结束开始日期 YYYYMMDD ,必填 "ruleTime":"080000", //规则生效具体时间点 HHMMSS,选填 "value":[ // 当想要以周、月、月日设置规则时,填写此项,配合dictCode使用,如:2-dOfW; // dOfW-按周 取值1~7,周一到周日; dOfM-按月, 取值 1, 15, 20-25每月的第1天、15天,20~25天, mAndD-几月几日,0221,0925-1028,每年的2月21,每年的0925~1028 "1", "2", "3" // 当此日下有多个时间段的时候,请在value字段内,传此值 // "01:00-02:00","03:00-04:00" ] } ] } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` ## 更新工作历规则 URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/updateWorkCalendarRule Method:POST Header:Content-Type=application/json 请求: { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101081009", // 项目ID ,必填 "batchInfo":[ { "id":"WR1338035594022948865", //规则ID,必填 "calendarId":"WC1335782235639480322", // 工作历ID ,必填 "dictType":"shop", //类型 ,必填,同项目下,字典类型+数据code 联合唯一 "dictCode":"2-dOfW", //数据code ,必填 dOfW-周 "ruleDateStart":"20200101", //规则生效开始日期 YYYYMMDD ,必填 "ruleDateEnd":"20300101", //规则结束开始日期 YYYYMMDD ,必填 "ruleTime":"080000", //规则生效具体时间点 HHMMSS,选填 "value":[ // 当想要以周、月、月日设置规则时,填写此项,配合dictCode使用,如:2-dOfW; // dOfW-按周 取值1~7,周一到周日; dOfM-按月, 取值 1, 15, 20-25每月的第1天、15天,20~25天, mAndD-几月几日,0221,0925-1028,每年的2月21,每年的0925~1028 "1", "2", "3" ] } ] } 返回: { "respCode": "00000", "respMsg": "更新成功" } ## 删除工作历规则 ``` URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/deleteWorkCalendarRule Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId":"Pj1101050029", // 项目ID ,必填 "calendarId":"WC1335218584007233538", // 工作历ID,选填 "id":"WR1335218652328251393" //规则ID,选填,但与工作历ID,必填其一 } ``` 返回: ``` { "respCode": "00000", "respMsg": "删除成功" } ``` # 标签属性管理 ## 根据时间段-自动计算出此年内不在此时间段内的日期 ``` URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/calculateExtraDate Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId": "QKZZ", // 用户ID ,必填 "labelDates": [ // 计算出不在此段时间内的,当年的时间段,必填 "20210102-20210305","20210502-20210807" ] } ``` 返回: ``` { "content": [ // 有序的,根据开始日期从小~大 "20210101-20210101", "20210306-20210501", "20210808-20211231" ], "respCode": "00000", "respMsg": "success" } ``` ## 日期标签属性列表查询 ``` URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/queryCalendarLabelList Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId": "QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId": "Pj1209010205", // 项目ID ,必填 "calendarId": "WC1367022614879485953", //工作历ID,选填 "labelDateStart": "20210301", //标签所属开始日期 YYYYMMdd,必填 "labelDateEnd": "20210331", //标签所属开始日期 YYYYMMdd,必填 "dictType": "ServerNum", //来源于字典值查询接口,选填; "dictCode": "ServerNum-1", //来源于字典值查询接口,选填; "diyLabel":"0" //是否自定义,0-非自定义,1-自定义,选填; } ``` 返回: ``` { "content": [ { "calendarId": "WC1367022614879485953", "createTime": "20210304195459", "dictCode": "ServerNum-1", "dictType": "ServerNum", "diyLabel": "0", "id": "WL1367443450996322306", "labelDate": "20210315", "projectId": "Pj1209010205", "updateTime": "20210304195459", "updateUser": "b9df7de50df148d3be69bcebab30c396" } ], "count": 1, "respCode": "00000", "respMsg": "success" } ``` ## 查询标签的有效期 ``` URL:http://develop.persagy.com/calendar/v2.0/calendarLabel/queryCalendarLabelValid Method:POST Header:Content-Type=application/json ``` 请求: ``` // 因为设计允许一个项目下创建多个工作历,所以当不传objId或calendarId时,结果是不对的 { "userId": "QKZZ", // 用户ID ,必填,不做为sql条件 "groupCode":"YL", // 集团编码,必填,作为sql条件 "projectId": "Pj4403050002", // 项目ID ,必填,作为sql条件 "objId":"Bd123546645", // 对象ID,当其存在时 calendarId 失效,以其为准,选填,作为sql条件 "calendarId": "WC1435880201339994114", //工作历ID,选填,作为sql条件 "labelDateStart": "20210301", //标签所属开始日期 YYYYMMdd,选填;作为sql条件 "labelDateEnd": "20210331", //标签所属开始日期 YYYYMMdd,选填;作为sql条件 "dictType": "ACSeason", //来源于字典值查询接口,选填;作为sql条件 "dictCode": "ACSeason-1", //来源于字典值查询接口,选填;作为sql条件 "diyLabel":"0", //是否自定义,0-非自定义,1-自定义,选填,作为sql条件 "groupBy": "DICT_TYPE, DICT_CODE" //分组条件,传列名:不传默认为 DICT_TYPE, DICT_CODE } ``` 返回: ``` { "content": [ { "dictCode": "ACSeason-1", "dictType": "ACSeason", "labelDateEnd": "20210930", // 此标签的有效期-结束时间 "labelDateStart": "20210602" // 此标签的有效期-开始时间 } ], "count": 1, "respCode": "00000", "respMsg": "success" } ``` ## 创建或更新或删除日期标签属性 ``` URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/updateLabelInfo Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId": "QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId": "Pj1209010205", // 项目ID ,必填 "isUpdate":true, // 是否在创建或更新之前,优先删除此段日期下已存在的标签属性,默认true "isDelete":false, // 是否只删除此段日期下已存在的标签属性,默认false "calendarId": "WC1367022614879485953", //工作历ID,必填 "labelDateStart": "20210303", //标签所属开始日期 YYYYMMdd,必填 "labelDateEnd": "20210331", //标签所属开始日期 YYYYMMdd,必填 "dictType": "ServerNum", //来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填; "dictCode": "ServerNum-1", //来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填; "diyLabel":"0", //是否自定义,0-非自定义,1-自定义; "diyValue":["小明", "小红"] //自定义的时候,必填 } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` ## 删除日期标签属性 ``` URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/createLabelInfo Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId": "QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId": "Pj1209010205", // 项目ID ,必填 "isDelete":true, // 是否优先删除此段日期下已存在的标签属性,默认false "calendarId": "WC1367022614879485953", //工作历ID,必填 "labelDateStart": "20210303", //标签所属开始日期 YYYYMMdd "labelDateEnd": "20210331", //标签所属开始日期 YYYYMMdd "labelCode": "ServerNum", //来源于字典值查询接口 "diyLabel": "0" //是否自定义,0-非自定义,1-自定义,当为1时,labelCode字段值,可以为 "1,2,3" 类型结构数据 } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` # 物理世界对象管理 ## 物理世界对象查询 ``` URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/queryRwdObjects Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode": "WD", // 集团编码,必填,做为sql条件 "userId": "QKCC", //用户ID,必填,不做为sql条件 "projectId":"Pj4403070003", //项目ID,必填,做为sql条件 "id":"Bd440307000375f48be8ed6b47189da6f2db66fd3a65" //主键ID,选填 "objType":["space", "floor", "building", "project"] //对象类型,默认为space, floor, building, project全查 } ``` 返回: ``` { "content": [ { "classCode": "building", "updateApp": "datacenter", "updateTime": 1608778512000, "createApp": "datacenter", "grouping": 1, "localId": "11", "virtualInfoCodes": [], "valid": 1, "localName": "111", "createTime": 1608778502000, "name": "建筑-M0S80", "id": "Bd440307000375f48be8ed6b47189da6f2db66fd3a65", // 对象ID "projectId": "Pj4403070003", "objType": "building", "isRelated": true, //是否存在工作历,true-存在,false-不存在 "calendarId":"WC1369223137783271425", //工作历ID,当isRelated为true时,存在 "calendarId":"测试" //工作历名称,当isRelated为true时,存在 } ], "count": 1, "respCode": "00000", "respMsg": "success" } ``` ## 查询工作历对象列表 ``` URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/queryCalendarObjectList Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode": "WD", // 集团编码,必填 "userId": "QKCC", //用户ID,必填 "projectId":"Pj1101051130", //项目ID,必填 "id": "WC1369223137783271425" //工作历ID,选填 } ``` 返回: ``` { "content": [ { "calendarDesc": "adsf", //工作历描述 "calendarName": "g1", //工作历名称/ "createTime": "20210310152105", "delFlag": "0", "groupCode": "WD", "id": "WC1369548849831501826", //工作历ID "objects": [ { "objectName": "楼层-Y8HAJ", //对象名称 "objectId": "Fl11010511304ad6248649744d6b9850352fbfbf7cdc" //对象ID }, { "objectName": "万达模型测试项目2", "objectId": "Pj1101051130" } ], "projectId": "Pj1101051130", "updateTime": "20210310152105", "updateUser": "b9df7de50df148d3be69bcebab30c396" } ], "count": 1, "respCode": "00000", "respMsg": "success" } ``` ## 添加对象工作历 ``` URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/addCalendarObject Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode": "WD", // 集团编码,必填 "userId": "QKCC", //用户ID,必填 "projectId":"Pj1209010205", //项目ID,必填 "calendarId":"WC1368868481819336705", //工作历ID,必填 "objId": "Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc", // 对象ID,假如与objIds同时存在,会一起生效,选填 "objIds": ["Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc"] //对象ID集合,默认为space, floor, building, project,选填 } ``` 返回: ``` { "respCode": "00000", "respMsg": "添加成功" } ``` ## 删除对象工作历 ``` URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/deleteCalendarObject Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode": "WD", // 集团编码,必填 "userId": "QKCC", //用户ID,必填 "projectId":"Pj1209010205", //项目ID,必填 "calendarId":"WC1368868481819336705", //工作历ID,选填 "objId": "Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc", // 对象ID,假如与objIds同时存在,会一起生效,选填 "objIds": ["Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc"] //对象ID集合,默认为space, floor, building, project,选填 } ``` 返回: ``` { "respCode": "00000", "respMsg": "删除成功" } ``` ## 物理世界对象变更所属工作历 ``` URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/changeCalendarObject Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode": "WD", // 集团编码,必填 "userId": "QKCC", //用户ID,必填 "projectId":"Pj1209010205", //项目ID,必填 "calendarId":"WC1368868481819336705", //工作历ID,必填 "objIds": ["Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc"] //对象ID集合,默认为space, floor, building, project,必填 } ``` 返回: ``` { "respCode": "00000", "respMsg": "操作成功" } ``` # 通用功能管理 ## 字典值查询 ``` URL:http://192.168.64.18:9930/calendar/v2.0/common/dictQuery Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填,不做为sql条件 "groupCode":"WD", // 集团编码,必填 "calendarId":"WC1367022614879485953", //工作历ID,一般是不需要填写的,除非此字典值是在属于某工作历类型的,而非项目的 "dictType": "shop" // 约定的类型,必填 } ``` 返回: ``` // 当dictType: shop,开闭店类型 { "content": { "2": "开店时间", "3": "商业闭店时间", "4": "娱乐闭店时间" }, "respCode": "00000", "respMsg": "success" } // 当dictType: ACSeason,空调季类别 { "content": { "ACSeason-1": "供冷", "ACSeason-2": "供暖", "ACSeason-3": "过渡" }, "respCode": "00000", "respMsg": "success" } // 当dictType: ServerNum,服务人数 { "content": { "ServerNum-1": "正常", "ServerNum-2": "急剧增多", "ServerNum-3": "一般增多", "ServerNum-4": "急剧减少", "ServerNum-5": "一般减少" }, "respCode": "00000", "respMsg": "success" } // 当dictType: UserNum,客流人数 { "content": { "UserNum-1": "正常", "UserNum-2": "急剧增多", "UserNum-3": "一般增多", "UserNum-4": "急剧减少", "UserNum-5": "一般减少" }, "respCode": "00000", "respMsg": "success" } // 当dictType: OpenTime { "content": { "OpenTime-1": "工作日", "OpenTime-2": "休息日" }, "respCode": "00000", "respMsg": "success" } // 当dictType: custom-type, 当calendarId: 不为空时(工作历类型ID) // 此时,允许code与name为相同值,如下仅是示例,并不是代表,code与name必须相同 { "content": { "小明": "小明", "小红": "小红", ... }, "respCode": "00000", "respMsg": "success" } ``` ## 字典值创建 ``` URL:http://192.168.64.18:9930/calendar/v2.0/common/dictCreate Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId": "QKZZ", // 用户ID ,必填 "groupCode":"WD", // 集团编码,必填 "projectId": "Pj1101050029", // 项目ID ,必填 "calendarId": "WC1367022614879485953", //工作历ID,一般是不需要填写的,除非此字典值是在属于某工作历类型的,而非项目的,选填 "dictType": "shop", // 约定的类型,必填 "codes": [ { "dictCode": "2", // 非必填 "dictDesc": "开店时间" // 必填 } ] } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` ## 立即解析规则信息 **说明:非自定义已存在的作息时间信息被更新,不存在的被插入** ``` URL:http://192.168.64.18:9930/calendar/v2.0/common/handleParseCalendarRule Method:POST Header:Content-Type=application/json ``` 请求: ``` { "userId":"QKZZ", // 用户ID ,必填 "projectId":"Pj1101050029", // 项目ID ,必填 "ruleId":"WR1335232948013666305", //规则ID,选填 "calendarId":"WC1335228701901586434", // 工作历ID,选填 "dictType": "shop", // 约定的类型 "dictCode": "4", // 约定的编码,不填就是此类型下所有的 2-开店时间;3-商业闭店时间;4-娱乐闭店时间 "workDateStart":"20201205", //需要查询的时间段范围的日期开始,必填 "workDateEnd":"20201207" //需要查询的时间段范围的日期结束,必填 } ``` 返回: ``` { "content": { "4": "娱乐闭店时间", "2": "开店时间", "3": "商业闭店时间" }, "respCode": "00000", "respMsg": "success" } ``` # 染色标尺相关接口 ## 新增染色基础信息 ``` URL:http://develop.persagy.com/calendar/dyeBasic/createDyeBasic Method:POST Header:Content-Type=application/json ``` 请求: ``` { "typeCode": "QQQQQQ", // 染色类型编码 必传 "typeName": "AAAA", // 染色类型名称 必传 "seasonCode": "ACSeason-3", // 季节类型编码 必传 "seasonName": "过渡季", // 季节类型名称 必传 "updateUserId": "423594c93c8f45ee904269f4d8d14743" // 操作人ID } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` ## 更新染色基础信息 ``` URL:http://develop.persagy.com/calendar/dyeBasic/updateDyeBasic Method:POST Header:Content-Type=application/json ``` 请求: ``` { "id":"98af9c276010410aa56a8053f678fd8f", // 要更新的数据ID 必传 "typeCode": "QQQQQQ", // 染色类型编码 "typeName": "AAAA", // 染色类型名称 "seasonCode": "ACSeason-3", // 季节类型编码 "seasonName": "过渡季", // 季节类型名称 "updateUserId": "423594c93c8f45ee904269f4d8d14743" // 操作人ID } ``` 返回: ``` { "respCode": "00000", "respMsg": "更新成功" } ``` ## 逻辑删除染色基础信息 ``` URL:http://develop.persagy.com/calendar/dyeBasic/deleteDyeBasic?dyeBasicId=必传&updateUserId= Method:POST Header:Content-Type=application/json ``` 请求: ``` dyeBasicId=&updateUserId= ``` 返回: ``` { "respCode": "00000", "respMsg": "删除成功" } ``` ## 染色基础信息列表查询 ``` URL:http://develop.persagy.com/calendar/dyeBasic/queryDyeBasicList Method:POST Header:Content-Type=application/json ``` 请求: ``` { } ``` 返回: ``` { "content": [ { "createTime": "2021-10-26 09:46:57", // 数据创建时间 "id": "1afa744ee32a45da8af67f704c8c4207", // 数据主键 "isDelete": "0", // 是否删除 "seasonCode": "ACSeason-1", // 季节编码 "seasonName": "供冷季", // 季节名称 "typeCode": "cO2", // 染色类型编码 "typeName": "空气CO2浓度", // 染色类型名称 "updateUserId": "423594c93c8f45ee904269f4d8d14743" // 最后操作人ID }, ... ], "count": 16, "respCode": "00000", "respMsg": "success" } ``` ## 新增默认染色规则信息 ``` URL:http://develop.persagy.com/calendar/dyeRuleDefault/createDyeRuleDefault Method:POST Header:Content-Type=application/json ``` 请求: ``` { "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传 "tempLowerLimit": "45", // 下限值 必传 "lowerSymbol": "(", // 下限符号 必传 "tempUpperLimit": "+∞", // 上限值 必传 "upperSymbol": ")", // 上限符号 必传 "name": "潮湿报警", // 染色标尺名称 必传 "colorValue": "#FF0000", // 色值 必传 "orderNum": "3", // 染色标尺排序 "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID "numSymbol": "%" // 数值单位(符号) } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` ## 更新默认染色规则信息 ``` URL:http://develop.persagy.com/calendar/dyeRuleDefault/updateDyeRuleDefault Method:POST Header:Content-Type=application/json ``` 请求: ``` { "id":"98af9c276010410aa56a8053f678fd8f", // 要更新的数据ID 必传 "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传 "tempLowerLimit": "45", // 下限值 必传 "lowerSymbol": "(", // 下限符号 必传 "tempUpperLimit": "+∞", // 上限值 必传 "upperSymbol": ")", // 上限符号 必传 "name": "潮湿报警", // 染色标尺名称 必传 "colorValue": "#FF0000", // 色值 必传 "orderNum": "3", // 染色标尺排序 "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID "numSymbol": "%" // 数值单位(符号) } ``` 返回: ``` { "respCode": "00000", "respMsg": "更新成功" } ``` ## 逻辑删除默认染色规则信息 ``` URL:http://develop.persagy.com/calendar/dyeRuleDefault/deleteDyeRuleDefault?dyeRuleDefaultId=必传&updateUserId= Method:POST Header:Content-Type=application/json ``` 请求: ``` dyeRuleDefaultId=&updateUserId= ``` 返回: ``` { "respCode": "00000", "respMsg": "删除成功" } ``` ## 默认染色规则信息列表查询 ``` URL:http://develop.persagy.com/calendar/dyeRuleDefault/queryDyeRuleDefaultList Method:POST Header:Content-Type=application/json ``` 请求: ``` { } ``` 返回: ``` { "content": [ { "basicId": "e101200c05094f30af34c741b10e7069", // 染色基础表ID "colorValue": "#00B050", // 色值 "createTime": "2021-10-27 15:17:39", // 创建时间 "id": "bec61d651b184609b4e62b4cc02b60b8", // 数据主键 "isDelete": "0", // 是否删除 "lowerLimit": -99, // 下限值(99在数据库代表无穷 前端显示建议使用返回字段tempLowerLimit) "lowerSymbol": "(", // 下限符号 "name": "良好", // 染色名称 "numSymbol": "μg/m3 每24小时", // 数值单位(符号) "orderNum": 3, // 染色排序 "tempLowerLimit": "(-∞", // 下限值 前端可直接用这个字段在列表回显 "tempUpperLimit": "15)", // 上限值 前端可直接用这个字段在列表回显 "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 最后操作人ID "upperLimit": 15, // 上限值(99在数据库代表无穷 前端显示建议使用返回字段tempUpperLimit) "upperSymbol": ")" // 上限符号 }, ... ], "count": 16, "respCode": "00000", "respMsg": "success" } ``` ## 新增自定义染色规则信息 ``` URL:http://develop.persagy.com/calendar/dyeRuleCustom/createDyeRuleCustom Method:POST Header:Content-Type=application/json ``` 请求: ``` { "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传 "groupCode": "YL", // 集团编码 必传 "projectId": "Pj4403050002", // 项目ID 必传 "tempLowerLimit": "45", // 下限值 必传 "lowerSymbol": "(", // 下限符号 必传 "tempUpperLimit": "+∞", // 上限值 必传 "upperSymbol": ")", // 上限符号 必传 "name": "潮湿报警", // 染色标尺名称 必传 "colorValue": "#FF0000", // 色值 必传 "orderNum": "3", // 染色标尺排序 "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID "numSymbol": "%" // 数值单位(符号) } ``` 返回: ``` { "respCode": "00000", "respMsg": "保存成功" } ``` ## 更新自定义染色规则信息 ``` URL:http://develop.persagy.com/calendar/dyeRuleCustom/updateDyeRuleCustom Method:POST Header:Content-Type=application/json ``` 请求: ``` { "id":"98af9c276010410aa56a8053f678fd8f", // 要更新的数据ID 必传 "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传 "groupCode": "YL", // 集团编码 必传 "projectId": "Pj4403050002", // 项目ID 必传 "tempLowerLimit": "45", // 下限值 必传 "lowerSymbol": "(", // 下限符号 必传 "tempUpperLimit": "+∞", // 上限值 必传 "upperSymbol": ")", // 上限符号 必传 "name": "潮湿报警", // 染色标尺名称 必传 "colorValue": "#FF0000", // 色值 必传 "orderNum": "3", // 染色标尺排序 "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID "numSymbol": "%" // 数值单位(符号) } ``` 返回: ``` { "respCode": "00000", "respMsg": "更新成功" } ``` ## 逻辑删除自定义染色规则信息 ``` URL:http://develop.persagy.com/calendar/dyeRuleCustom/deleteDyeRuleCustom?dyeRuleCustomId=必传&updateUserId= Method:POST Header:Content-Type=application/json ``` 请求: ``` dyeRuleCustomId=&updateUserId= ``` 返回: ``` { "respCode": "00000", "respMsg": "删除成功" } ``` ## 自定义染色规则信息列表查询 ``` URL:http://develop.persagy.com/calendar/dyeRuleCustom/queryDyeRuleCustomList Method:POST Header:Content-Type=application/json ``` 请求: ``` { } ``` 返回: ``` { "content": [ { "basicId": "e101200c05094f30af34c741b10e7069", // 染色基础表ID "groupCode": "YL", // 集团编码 "projectId": "Pj4403050002", // 项目ID "colorValue": "#00B050", // 色值 "createTime": "2021-10-27 15:17:39", // 创建时间 "id": "bec61d651b184609b4e62b4cc02b60b8", // 数据主键 "isDelete": "0", // 是否删除 "lowerLimit": -99, // 下限值(99在数据库代表无穷 前端显示建议使用返回字段tempLowerLimit) "lowerSymbol": "(", // 下限符号 "name": "良好", // 染色名称 "numSymbol": "μg/m3 每24小时", // 数值单位(符号) "orderNum": 3, // 染色排序 "tempLowerLimit": "(-∞", // 下限值 前端可直接用这个字段在列表回显 "tempUpperLimit": "15)", // 上限值 前端可直接用这个字段在列表回显 "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 最后操作人ID "upperLimit": 15, // 上限值(99在数据库代表无穷 前端显示建议使用返回字段tempUpperLimit) "upperSymbol": ")" // 上限符号 }, ... ], "count": 16, "respCode": "00000", "respMsg": "success" } ``` ## 查询指定集团、项目和类型的染色标尺列表 ``` URL:http://develop.persagy.com/calendar/dye/sdk/listDyeScaleplateByType Method:POST Header:Content-Type=application/json ``` 请求: ``` { "groupCode": "YL", // 集团编码 必传 "projectId": "Pj4403050002", // 项目ID 必传 "typeCode": "pM2d5" // 染色类型编码 必传 } ``` 返回: ``` { "content": [ { "name": "高", // 染色名称 "colorValue": "#FF0000", // 色值 "upperLimit": "+∞)", // 上限值 "lowerLimit": "(35", // 下限值 "ID": "0e7024ae696b44e38dbafacc86c28d18" // 染色标尺唯一ID }, ... ], "count": 3, "respCode": "00000", "respMsg": "success" } ``` ## 查询空间对应的染色标尺 ``` URL:http://develop.persagy.com/calendar/dye/sdk/listDyeScaleplateWithSpaceIds Method:POST Header:Content-Type=application/json ``` 请求: ``` { "projectId": "Pj4403050002", // 项目ID 必传 "groupCode": "YL", // 集团编码 必传 "typeCode": "pM2d5", // 染色类型编码 必传 "dynamicArray": [ // 动态监测数据 必传 { "spaceId": "SP369784854323156456", // 空间ID 必传 "realTimeNum": 22 // 动态监测值 必传 }, ... ] } ``` 返回: ``` { "content": [ { "spaceId": "SP369784854323156456", // 空间ID "name": "达标", // 染色类型编码 "colorValue": "#C5E0B3", // 色值 "upperLimit": "35]", // 上限 "lowerLimit": "[15", // 下限 "ID": "b0e884ff3a5141a189f4f40b2878b83c", // 染色标尺主键 "projectId": "Pj4403050002", // 项目ID "realTimeNum": 22, // 实时动态监测值 "groupCode": "YL", // 集团编码 "typeCode": "pM2d5" // 染色类型编码 },, ... ], "count": 2, "respCode": "00000", "respMsg": "success" } ```