# 鎖控 修改 api ###### tags: `鎖控` 在修改鎖控時,block_mn 只能修改、blockinv_mn 會新、刪、修 * 後端 * #### 修改 block_mn 1. 檢查acust_cod,有訂房卡指定此鎖控時不可修改 2. 鎖控日期需大於滾房租日期。 * #### 新增 blockinv_mn 1. 檢查 鎖控日期-幾天前釋出需 >=滾房租日期 2. 鎖控日期需大於滾房租日期。 3. 檢查房型是否有庫存,update完之後檢查 * #### 修改 blockinv_mn 1. 檢查 鎖控日期-幾天前釋出需 >=滾房租日期 2. 鎖控日期需大於滾房租日期。 3. 檢查房型是否有庫存,update完之後檢查 4. 檢查鎖控庫存數量,update完之後檢查 * #### 刪除 blockinv_mn 1. 大於等於滾房租日期, 2. 且沒有任一訂房數及未用釋出的blockinv_mn資料才可刪除 * 前端 1. block_cod 唯讀 2. acust_cod 有訂房卡指定此鎖控時,唯讀 3. room_cod 唯讀 4. batch_dat 唯讀 5. 鎖控日期小於等於滾房租日期,整筆唯讀不可修改、刪除。 6. 只要有 release_days 整筆唯讀不可修改、刪除 7. 修改鎖控數量不可小於訂房數+未用釋出 8. 大於等於滾房租日期,且沒有任一訂房數及未用釋出的blockinv_mn資料才可刪除 ```json= { "prg_id" : "PMS0120010", "socket_id" : "p6m5HF8u85NACf-0AAAO", "athena_id" : 25, "ins_usr" : "cio", "session_id" : 36729501, "func_id" : "0400", "params" : {}, "locale" : "zh_TW", "trans_log_id" : "20200227185833585", "mac" : "", "comp_cod" : "ZZATHENA", "hotel_cod" : "01", "server_ip" : "", "reve_code" : "PMS0120010", "client_ip" : "", "upd_usr" : "cio", "user" : "cio", "table" : { "block_mn" : [ { "action_cod" : "U", "block_rmk" : "andy測試專用-1", "acust_cod" : "TW01", "condition" : [ { "field" : "athena_id", "value" : "25", "operator" : "equal" }, { "field" : "hotel_cod", "value" : "01", "operator" : "equal" }, { "field" : "block_cod", "value" : "SSS", "operator" : "equal" } ] } ], "blockinv_mn" : [ { "action_cod" : "C", "athena_id" : "25", "hotel_cod" : "01", "block_cod" : "SSS", "room_cod" : "ZZZ", "batch_dat" : "2019/11/12", "block_qnt" : "5", "release_days" : "5" }, { "action_cod" : "D", "condition" : [ { "field" : "athena_id", "value" : "25", "operator" : "equal" }, { "field" : "hotel_cod", "value" : "01", "operator" : "equal" }, { "field" : "block_cod", "value" : "SSS", "operator" : "equal" }, { "field" : "batch_dat", "value" : "2019/11/11", "operator" : "equal" }, { "field" : "room_cod", "value" : "ZZZ", "operator" : "equal" } ] } ] }, "event_time" : "2020-02-27T18:58:31+08:00" } ```