public static async Task <bool> TakeSling(int staffId, string rfId) { var sqlFormat = "UPDATE t_res_use_log SET take_time = '{0}' " + "WHERE take_time IS NULL AND take_staff_id = {1} AND rf_id = '{2}'"; var sqlStr = string.Format(sqlFormat, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), staffId, rfId); var data = await PgUtil.ExecuteAsync(sqlStr); return(data); }
public static async Task <int> PutNewSling(int staffId, string staffName, string rfId, int cabinetId, int gridNo) { // 查 var newData = await GetSlingIDByRFID(rfId); if (newData == null) { return(-2); // 未找到 } // 位置 var curTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var sqlFormat = "INSERT INTO t_res_cabinet_grid (created_at, updated_at, grid_no, cabinet_id, in_res_id, is_out) VALUES ('{0}', '{1}', {2}, {3}, {4}, 0)"; var sqlStr = string.Format(sqlFormat, curTime, curTime, gridNo, cabinetId, newData[0]); var data = await PgUtil.ExecuteAsync(sqlStr); return(data ? 0 : -1); }
// 1-rfID已存在,0-成功,1-失败 public static async Task <int> PutSling(int staffId, string staffName, string rfId, int cabinetId, int gridNo) { var data0 = await GetSlingIDByRFID(rfId); if (data0 != null) { return(1); // 已存在 } // 写 var sqlFormat = "INSERT INTO t_res_sling (created_at, updated_at, rf_id, name, use_status, inspect_status, put_time) VALUES ('{0}', '{1}', '{2}', '{3}', 1, 1, '{4}')"; var curTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var sqlStr = string.Format(sqlFormat, curTime, curTime, rfId, rfId, curTime); var data = await PgUtil.ExecuteAsync(sqlStr); if (!data) // 添加失败 { return(-1); } // 查 var newData = await GetSlingIDByRFID(rfId); if (newData == null) { return(-1); // 写失败 } // 位置 sqlFormat = "INSERT INTO t_res_cabinet_grid (created_at, updated_at, grid_no, cabinet_id, in_res_id, is_out) VALUES ('{0}', '{1}', {2}, {3}, {4}, 0)"; sqlStr = string.Format(sqlFormat, curTime, curTime, gridNo, cabinetId, newData[0]); data = await PgUtil.ExecuteAsync(sqlStr); if (!data) // 如果出错删除第一步 { sqlFormat = "DELETE FROM t_res_sling WHERE id = {0}"; sqlStr = string.Format(sqlFormat, newData[0]); data = await PgUtil.ExecuteAsync(sqlStr); return(-1); } return(data ? 0 : -1); }