/// <summary> /// Сохранение проекта, т.е. запись в базу данных прокта с номером промежуточного сохранения "0" /// </summary> /// <param name="perTempNumber"> Номер текущего промежуточного сохранения перечня элементов</param> /// <param name="specTempNumber"> Номер текущего промежуточного сохранения спецификации</param> public void Save(int perTempNumber, int specTempNumber, int vedomostTempNumber) { //Перечень элементов: //Удаление сохранённых ранее данных: db.Table <PerechenItem>().Delete(x => x.id < Global.TempStartPosMask); //Удаляем все элементы, у которых tempNum = 0 //Сохранение текущих элементов: int perLength = GetPerechenLength(perTempNumber); for (int i = 1; i <= perLength; i++) { PerechenItem perItem = new PerechenItem(); perItem = GetPerechenItem(i, perTempNumber); perItem.id = i; AddPerechenItem(perItem); } //Спецификация: //Удаление сохранённых ранее данных: db.Table <SpecificationItem>().Delete(x => x.id <= Global.TempStartPosMask); //Удаляем все элементы, у которых tempNum = 0 //Сохранение текущих элементов: int specLength = GetSpecLength(specTempNumber); for (int i = 1; i <= specLength; i++) { SpecificationItem specItem = new SpecificationItem(); specItem = GetSpecItem(i, specTempNumber); specItem.id = i; AddSpecItem(specItem); } //Ведомость: //Удаление сохранённых ранее данных: db.Table <VedomostItem>().Delete(x => x.id <= Global.TempStartPosMask); //Удаляем все элементы, у которых tempNum = 0 //Сохранение текущих элементов: int vedomostLength = GetVedomostLength(vedomostTempNumber); for (int i = 1; i <= vedomostLength; i++) { VedomostItem vedomostItem = new VedomostItem(); vedomostItem = GetVedomostItem(i, vedomostTempNumber); vedomostItem.id = i; AddVedomostItem(vedomostItem); } }
/// <summary> /// Добавляет элемент ведомости в базу данных проекта /// </summary> /// <param name="item"> Элемент ведомости</param> /// <returns></returns> public int AddVedomostItem(VedomostItem item) { return(db.InsertOrReplace(item)); }