public static void Save_ChargeMeter_Project_Point(ChargeMeter_Project data, SqlHelper helper) { var data_detail = ChargeMeter_ProjectDetail.GetChargeMeter_ProjectDetailByID(data.ID, helper); var point = new ChargeMeter_Project_Point(); point.MeterFullName = data_detail.FinalName; point.ChargeMeter_ProjectID = data.ID; point.ProjectID = data.ProjectID; point.MeterID = data.MeterID; point.MeterName = data.MeterName; point.MeterNumber = data.MeterNumber; point.MeterCategoryID = data.MeterCategoryID; point.MeterType = data.MeterType; point.MeterSpec = data.MeterSpec; point.MeterCoefficient = data.MeterCoefficient; point.MeterRemark = data.MeterRemark; point.MeterChargeID = data.MeterChargeID; point.MeterHouseNo = data.MeterHouseNo; point.MeterLocation = data.MeterLocation; point.SortOrder = data.SortOrder; point.MeterStartPoint = data.MeterStartPoint; point.MeterEndPoint = data.MeterEndPoint; point.MeterTotalPoint = data.MeterTotalPoint; point.AddTime = data.AddTime; point.AddUserName = data.AddUserName; point.WriteStatus = data.WriteStatus; point.FeeStatus = data.FeeStatus; point.WriteDate = data.WriteDate; point.WriteUserName = data.WriteUserName; point.IsAPPWriteEnable = data.IsAPPWriteEnable; point.UpdateTime = DateTime.Now; point.UpdateUserName = User.GetCurrentUserName(); point.Save(helper); }
public static Ui.DataGrid GetChargeMeter_ProjectDetailGridByKeywords(string Keywords, List <int> RoomIDList, List <int> ProjectIDList, int MeterCategoryID, int MeterType, int MeterChargeID, string orderBy, long startRowIndex, int pageSize, int UserID = 0, bool canexport = false, bool IsWritePoint = false) { long totalRows = 0; List <SqlParameter> parameters = new List <SqlParameter>(); List <string> conditions = new List <string>(); conditions.Add("1=1"); if (ProjectIDList.Count > 0) { List <string> cmdlist = ViewRoomFeeHistory.GetProjectIDListConditions(ProjectIDList, IncludeRelation: false, RoomIDName: "[ProjectID]", UserID: UserID); conditions.Add("(" + string.Join(" or ", cmdlist.ToArray()) + ")"); } if (RoomIDList.Count > 0) { List <string> cmdlist = ViewRoomFeeHistory.GetRoomIDListConditions(RoomIDList, IncludeRelation: false, RoomIDName: "[ProjectID]"); conditions.Add("(" + string.Join(" or ", cmdlist.ToArray()) + ")"); } if (!string.IsNullOrEmpty(Keywords)) { conditions.Add("([MeterName] like @Keywords or [MeterNumber] like @Keywords)"); parameters.Add(new SqlParameter("@Keywords", "%" + Keywords + "%")); } if (MeterCategoryID > 0) { conditions.Add("[MeterCategoryID]=@MeterCategoryID"); parameters.Add(new SqlParameter("@MeterCategoryID", MeterCategoryID)); } if (MeterType > 0) { conditions.Add("[MeterType]=@MeterType"); parameters.Add(new SqlParameter("@MeterType", MeterType)); } if (MeterChargeID > 0) { conditions.Add("[MeterChargeID]=@MeterChargeID"); parameters.Add(new SqlParameter("@MeterChargeID", MeterChargeID)); } string cmdcolumns = string.Empty; ChargeMeter_ProjectDetail[] list = new ChargeMeter_ProjectDetail[] { }; if (canexport) { string cmdtext = "select * from (" + CommSqlText + ") as A where " + string.Join(" and ", conditions.ToArray()) + " order by " + orderBy; list = GetList <ChargeMeter_ProjectDetail>(cmdtext, parameters).ToArray(); } else { string fieldList = @"A.*"; string Statement = " from (" + CommSqlText + ") as A where " + string.Join(" and ", conditions.ToArray()); list = GetList <ChargeMeter_ProjectDetail>(fieldList, Statement, parameters, orderBy, startRowIndex, pageSize, out totalRows).ToArray(); } DataAccess.Ui.DataGrid dg = new Ui.DataGrid(); dg.rows = list; dg.total = totalRows; dg.page = pageSize; return(dg); }
public static bool Save_ChargeMeter_ProjectFee(int[] MeterProjectIDList, DateTime WriteDate, decimal Coefficient, decimal SummaryUnitPrice, DateTime StartTime, DateTime EndTime, string AddUserName, out string errormsg, List <int> ChargeIDList) { errormsg = string.Empty; var meter_project_list = ChargeMeter_ProjectDetail.GetChargeMeter_ProjectDetailListByIDList(MeterProjectIDList); if (meter_project_list.FirstOrDefault(p => p.RoomOwnerCount <= 0) != null && new Utility.SiteConfig().CheckOwnerInStatus) { errormsg = "选中的房间尚未有业主入住"; return(false); } if (meter_project_list.Length == 0) { errormsg = "请选择一条数据,操作取消"; return(false); } using (SqlHelper helper = new SqlHelper()) { try { helper.BeginTransaction(); List <int> RoomFeeIDList = new List <int>(); foreach (var ChargeID in ChargeIDList) { foreach (var item in meter_project_list) { string cmdtext = "update [ChargeMeter_Project] set [WriteStatus]=1,[FeeStatus]=1 where ID=" + item.ID + ";"; helper.Execute(cmdtext, CommandType.Text, new List <SqlParameter>()); var data = new ChargeMeter_ProjectFee(); data.MeterProjectID = item.ID; data.MeterID = item.MeterID; data.ProjectID = item.ProjectID; data.MeterName = item.MeterName; data.MeterNumber = item.MeterNumber; data.MeterCategoryID = item.MeterCategoryID; data.MeterType = item.MeterType; data.MeterSpec = item.MeterSpec; data.MeterCoefficient = Coefficient; data.MeterRemark = item.MeterRemark; data.MeterChargeID = ChargeID; data.MeterHouseNo = item.MeterHouseNo; data.MeterLocation = item.MeterLocation; data.SortOrder = item.SortOrder; data.MeterStartPoint = item.FinalFeeStartPoint; data.MeterEndPoint = item.FinalFeeEndPoint; data.MeterTotalPoint = item.FinalFeeTotalPoint; data.AddTime = DateTime.Now; data.AddUserName = AddUserName; data.MeterStartTime = StartTime; data.MeterEndTime = EndTime; data.MeterWriteDate = WriteDate; data.WriteDate = item.WriteDate; data.WriteUserName = item.WriteUserName; var room_fee = RoomFee.SetInfo_RoomFee(data.ProjectID, data.MeterStartTime, data.MeterEndTime, 0, 0, SummaryUnitPrice, ChargeID, IsMeterFee: true, RoomFeeCoefficient: data.MeterCoefficient, RoomFeeWriteDate: WriteDate, UseCount: data.MeterTotalPoint, RoomFeeStartPoint: data.MeterStartPoint, RoomFeeEndPoint: data.MeterEndPoint, cansave: true, helper: helper); data.RoomFeeID = room_fee.ID; data.Save(helper); room_fee.ChargeMeterProjectFeeID = data.ID; room_fee.Save(helper); RoomFeeIDList.Add(room_fee.ID); } } ChargeFeePriceRange.CreateChargeFeePriceRangeByImportFeeIDList(helper, RoomFeeIDList: RoomFeeIDList); helper.Commit(); } catch (Exception ex) { Utility.LogHelper.WriteError("ChargeMeter_ProjectFee.cs", "Save_ChargeMeter_ProjectFee", ex); helper.Rollback(); errormsg = ex.Message; return(false); } } return(true); }