public async Task<string> DelPlanNotGoal_No4(string CustId, int YY, int item) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var itm = await db.PlanNotGoal_No4.FindAsync(new object[] { CustId, YY, item }); db.PlanNotGoal_No4.Remove(itm); await db.SaveChangesAsync(); RItemPlanNotGoal_No4(CustId, YY); r.result = true; return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } }
public async Task<string> DeleteEquipAssign(string CustId, int YY) { var db = new EnergyNetEntities(); var r = new AjaxResult(); var pass_state = StateCheck(CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } if (db.EquipUseState.Any(x => x.CustID == CustId && x.YY == YY)) { try { #region Add New var items = db.EquipUseState.Where(x => x.CustID == CustId && x.YY == YY); db.EquipUseState.RemoveRange(items); await db.SaveChangesAsync(); r.result = true; #endregion } catch (Exception ex) { r.result = false; r.message = ex.Message; } finally { db.Dispose(); } } return defJSONNull(r); }
public async Task<string> UptPlanNotGoal_No4(UptPlanNotGoal_No4Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var md = param.md; var item = await db.PlanNotGoal_No4.FindAsync(new object[] { param.CustId, param.YY, param.item }); item.item = md.item; item.doing = md.doing; item.target = md.target; item.fam_text = md.fam_text; item.save_amt = md.save_amt; item.save_money = md.save_money; item.invest = md.invest; item.y1 = md.y1; item.y2 = md.y2; await db.SaveChangesAsync(); RItemPlanNotGoal_No4(md.CustID, md.YY); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> GetGradItem(string CustId, int YY, string pno, int item, string checkerid) { var db = new EnergyNetEntities(); var r = new AjaxResult<IEnumerable<Graid_Item>>(); try { #region Code var item1 = await db.ExamineReport_Master.FindAsync(new object[] { CustId, YY }); if (item1 == null) { r.message = "無申報完成項目記錄"; r.result = false; } var item2 = await db.ExamineReport_Record .Where(x => x.CustID == CustId && x.YY == YY).OrderByDescending(x => x.examine_report_record_id).FirstOrDefaultAsync(); if (item2 == null) { r.message = "無申報完成項明細目記錄"; r.result = false; } var examine_report_record_id = item2.examine_report_record_id; var item3 = await db.Grad.Where(x => x.CustId == CustId && x.YY == YY && x.examine_report_record_id == examine_report_record_id) .OrderByDescending(x => x.grad_id) .FirstOrDefaultAsync(); var master_id = 0; if (item3 == null) { var item_prv = await db.Grad.Where(x => x.CustId == CustId && x.YY == YY) .OrderByDescending(x => x.grad_id) .FirstOrDefaultAsync(); var md = new Grad() { CustId = CustId, YY = YY, check_date = DateTime.Now, examine_report_record_id = examine_report_record_id, checker = checkerid }; db.Grad.Add(md); await db.SaveChangesAsync(); master_id = md.grad_id; if (item_prv != null) //copy 上次資料 { var details = db.Graid_Item.Where(x => x.graid_id == item_prv.grad_id); foreach (var detail in details) { var mds = new Graid_Item(); mds.graid_id = master_id; mds.repord_id = detail.repord_id; mds.opt_id = detail.opt_id; mds.mem = detail.mem; mds.item = detail.item; db.Graid_Item.Add(mds); } await db.SaveChangesAsync(); } } else { master_id = item3.grad_id; } #endregion var item4 = await db.Graid_Item.Where(x => x.graid_id == master_id && x.repord_id == pno && x.item == item) .ToListAsync(); r.data = item4; r.result = true; } catch (Exception ex) { r.result = false; r.message = getException(ex); throw; } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> UptFloorElecItem(IEnumerable<FloorElec> mds) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); try { string CustID = string.Empty; int YY = 0; foreach (var md in mds) { var item = await db.FloorElec.FindAsync(md.CustID, md.YY, md.month); item.p_floor = md.p_floor; item.n_floor = md.n_floor; item.p_eui = md.p_eui; item.n_eui = md.n_eui; if (CustID == string.Empty) { CustID = md.CustID; YY = md.YY; var pass_state = StateCheck(CustID); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } } } var g_item = mds.GroupBy(x => (x.month - 1) / 3).Select( y => new { qno = y.Key, sum_p_eui_amt = y.Sum(x => x.p_eui_amt), sum_n_eui_amt = y.Sum(x => x.n_eui_amt), avg_p_floor = y.Average(x => x.p_floor), avg_n_floor = y.Average(x => x.n_floor) }); var q_item_data = await db.FloorElecQ.Where(x => x.CustID == CustID && x.YY == YY).OrderBy(x => x.QNO).ToListAsync(); foreach (var item in g_item) { var q_p_value = item.avg_p_floor == 0 ? 0 : item.sum_p_eui_amt / item.avg_p_floor; var q_n_value = item.sum_n_eui_amt / item.avg_n_floor; var q_item = q_item_data.Where(x => x.QNO == (item.qno + 1)).FirstOrDefault(); if (q_p_value == 0) { q_item.diff_result = 0; } else { q_item.diff_result = ((q_n_value - q_p_value) / q_p_value) * 100; } } await db.SaveChangesAsync(); RecordReportList(CustID, YY, "J54"); r.result = true; return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } }
public async Task<string> UptGrad_2015(UptGrad_2015Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var mds = param.md; foreach (var md in mds) { var item = await db.Grad_2015.FindAsync(new object[] { param.CustId, param.YY, param.rpt_no, md.item }); if (item == null) { db.Grad_2015.Add(md); } else { item.opt = md.opt; item.mem = md.mem; } } await db.SaveChangesAsync(); r.result = true; } catch (DbEntityValidationException ex) { r.result = false; r.message = getDbEntityValidationException(ex); return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> GetGradList(string CustId, int YY) { var db = new EnergyNetEntities(); var r = new AjaxResult<IList<IGrouping<string, Graid_Detail>>>(); try { #region Code 檢查是否有申報完成 var exam_record = await db.ExamineReport_Record .Where(x => x.CustID == CustId && x.YY == YY) .OrderByDescending(x => x.examine_report_record_id) .FirstOrDefaultAsync(); if (exam_record == null) { r.message = "無申報完成項明細目記錄"; r.result = false; } var examine_report_record_id = exam_record.examine_report_record_id; var grad = await db.Grad.Where(x => x.examine_report_record_id == examine_report_record_id) .OrderByDescending(x => x.grad_id) .FirstOrDefaultAsync(); var master_id = 0; if (grad == null) { #region Code var item_prv = await db.Grad.Where(x => x.CustId == CustId && x.YY == YY) .OrderByDescending(x => x.grad_id) .FirstOrDefaultAsync(); var checkerid = (await db.BuileBase.FindAsync(new object[] { CustId, YY })).CheckerId; var md = new Grad() { CustId = CustId, YY = YY, check_date = DateTime.Now, examine_report_record_id = examine_report_record_id, checker = checkerid }; db.Grad.Add(md); await db.SaveChangesAsync(); master_id = md.grad_id; if (item_prv != null) //copy 上次資料 { var details = db.Graid_Detail.Where(x => x.graid_id == item_prv.grad_id); foreach (var detail in details) { var mds = new Graid_Detail(); mds.graid_id = master_id; mds.repord_id = detail.repord_id; mds.opt_id = detail.opt_id; mds.mem = detail.mem; db.Graid_Detail.Add(mds); } await db.SaveChangesAsync(); } #endregion } #endregion var master = await db.Grad.Where(x => x.examine_report_record_id == examine_report_record_id) .OrderByDescending(x => x.grad_id) .Take(1) .FirstOrDefaultAsync(); if (master != null) { var items = await db.Graid_Detail .Where(x => x.graid_id == master.grad_id) .GroupBy(x => x.repord_id, (key, g) => new { repord_id = key, data = g }) .ToListAsync(); return defJSONNull(items); } else { r.result = false; return defJSONNull(null); } } catch (Exception ex) { r.result = false; r.message = getException(ex); return defJSONNull(null); } finally { db.Dispose(); } }
public async Task<string> UptPlanEnergyResult_2015(UptPlanEnergyResult_2015Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.PlanEnergyResult_2015.FindAsync(param.CustId, param.YY, param.item); var md = param.md; if (item != null) { //item.item = md.item; item.save_src = md.save_src; item.eng_type = md.eng_type; item.save_code = md.save_code; item.act_exec = md.act_exec; item.act_area = md.act_area; item.act_target = md.act_target; item.act_text = md.act_text; item.chg_before = md.chg_before; item.chg_after = md.chg_after; item.y1 = md.y1; item.m1 = md.m1; item.y2 = md.y2; item.m2 = md.m2; item.fma_no1_text = md.fma_no1_text; item.fma_no21_1_B1 = md.fma_no21_1_B1; item.fma_no21_1_B2 = md.fma_no21_1_B2; item.fma_no21_1_B3 = md.fma_no21_1_B3; item.fma_no21_1_B4 = md.fma_no21_1_B4; item.fma_no21_2_B1 = md.fma_no21_2_B1; item.fma_no21_2_B2 = md.fma_no21_2_B2; item.fma_no21_2_B3 = md.fma_no21_2_B3; item.fma_no21_2_B4 = md.fma_no21_2_B4; item.fma_no22_C1 = md.fma_no22_C1; item.fma_no22_C2 = md.fma_no22_C2; item.fma_no22_C3 = md.fma_no22_C3; item.fma_no22_C4 = md.fma_no22_C4; item.fma_no22_C5 = md.fma_no22_C5; item.fma_no22_C6 = md.fma_no22_C6; item.fma_no22_D1 = md.fma_no22_D1; item.fma_no22_D2 = md.fma_no22_D2; item.fma_no22_D3 = md.fma_no22_D3; item.fma_no22_D4 = md.fma_no22_D4; item.fma_no22_D5 = md.fma_no22_D5; item.fma_no22_D6 = md.fma_no22_D6; item.fma_no22_C6_Frm = md.fma_no22_C6_Frm; item.fma_no22_D6_Frm = md.fma_no22_D6_Frm; item.fma_no22_E = md.fma_no22_E; item.fma_no23 = md.fma_no23; item.fma_no3_F = md.fma_no3_F; item.eff_no11_1_g1 = md.eff_no11_1_g1; item.eff_no11_1_g2 = md.eff_no11_1_g2; item.eff_no11_1_g3 = md.eff_no11_1_g3; item.eff_no11_2_g1 = md.eff_no11_2_g1; item.eff_no11_2_g2 = md.eff_no11_2_g2; item.eff_no11_2_g3 = md.eff_no11_2_g3; item.eff_other = md.eff_other; item.eff_save_money = md.eff_save_money; item.inves_no1_1_text = md.inves_no1_1_text; item.inves_no1_1_i1 = md.inves_no1_1_i1; item.inves_no1_1_i2 = md.inves_no1_1_i2; item.inves_no1_1_i3 = md.inves_no1_1_i3; item.inves_no1_1_i4 = md.inves_no1_1_i4; item.inves_no1_2_text = md.inves_no1_2_text; item.inves_no1_2_i1 = md.inves_no1_2_i1; item.inves_no1_2_i2 = md.inves_no1_2_i2; item.inves_no1_2_i3 = md.inves_no1_2_i3; item.inves_no1_2_i4 = md.inves_no1_2_i4; item.inves_no2_1_text = md.inves_no2_1_text; item.inves_no2_1_i5 = md.inves_no2_1_i5; item.inves_no2_2_text = md.inves_no2_2_text; item.inves_no2_2_i6 = md.inves_no2_2_i6; item.inves_total = md.inves_total; item.ECMCECID = md.ECMCECID; item.ECMCTypeCode = md.ECMCTypeCode; item.ECMMECID = md.ECMMECID; item.start_m = md.start_m; item.end_m = md.end_m; item.restrain_amt = md.restrain_amt; item.CalToOilKi = CalToOilKi(md.eng_type, (decimal)md.fma_no3_F); } else { r.result = false; r.message = "查無資料!"; return defJSON(r); } await db.SaveChangesAsync(); RItemPlanEnergyResult_2015(md.CustID, md.YY); RecordReportList(param.CustId, param.YY, "JB1"); r.result = true; } catch (DbEntityValidationException ex) { r.result = false; r.message = getDbEntityValidationException(ex); return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> UptPlanEnergyResult_Grid_2015(UptPlanEnergyResult_2015Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.PlanEnergyResult_2015.FindAsync(param.CustId, param.YY, param.item); var md = param.md; if (item != null) { item.start_m = md.start_m; item.end_m = md.end_m; item.restrain_amt = md.restrain_amt; } else { r.result = false; r.message = "查無資料!"; return defJSON(r); } await db.SaveChangesAsync(); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> GetEnergyPushState(string CustId, int YY) { var db = new EnergyNetEntities(); var item = await db.EnergyPushState.FindAsync(new object[] { CustId, YY }); if (item != null) { var md = new m_EnergyPushState(); md.CustID = item.CustID; md.push_no_1 = item.push_no_1; md.push_no_2 = item.push_no_2; md.push_no_3 = item.push_no_3; md.push_no_4 = item.push_no_4; md.push_no_5 = item.push_no_5; md.push_no_6 = item.push_no_6; md.push_no_7 = item.push_no_7; md.push_no_8 = item.push_no_8; md.push_no_9 = item.push_no_9; md.push_no_10 = item.push_no_10; md.push_no_10_memo = item.push_no_10_memo; md.push_no_11 = item.push_no_11; md.push_no_11_memo = item.push_no_11_memo; md.push_no_12 = item.push_no_12; md.push_no_12_memo = item.push_no_12_memo; md.push_no_13 = item.push_no_13; md.push_no_13_memo = item.push_no_13_memo; md.push_no_14 = item.push_no_14; md.push_no_14_memo = item.push_no_14_memo; md.push_no_15 = item.push_no_15; md.push_no_15_memo = item.push_no_15_memo; md.push_no_1_year = item.push_no_1_year; md.push_no_1_near_year = item.push_no_1_near_year; db.Dispose(); return defJSON(md); } else { return null; } }
public async Task<string> InsPlanEnergyResult_2015(InsPlanEnergyResult_2015Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var md = param.md; md.item = (new Random()).Next(1000, 2000); md.CalToOilKi = CalToOilKi(md.eng_type, (decimal)md.fma_no3_F); db.PlanEnergyResult_2015.Add(md); await db.SaveChangesAsync(); RItemPlanEnergyResult_2015(md.CustID, md.YY); RecordReportList(param.CustId, param.YY, "JB1"); r.result = true; } catch (DbEntityValidationException ex) { r.result = false; r.message = getDbEntityValidationException(ex); return defJSON(r); } catch (Exception ex) { r.result = false; r.message = getException(ex); return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> GetBuileBaseSIMP(string CustId, int YY) { var db = new EnergyNetEntities(); var item = await db.BuileBase.Where(x => x.CustID == CustId && x.YY == YY) .Select(x => new { x.CustID, x.YY, x.CustName }).FirstOrDefaultAsync(); db.Dispose(); return defJSON(item); }
public async Task<string> DelSaveEnergyResult_2015(string CustId, int YY, int item) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var itm = await db.SaveEnergyResult_2015.FindAsync(new object[] { CustId, YY, item }); db.SaveEnergyResult_2015.Remove(itm); await db.SaveChangesAsync(); RItemSaveEnergyResult_2015(CustId, YY); r.result = true; Log.Write(new string[] { "delete 10-1", CustId, YY.ToString(), item.ToString() }); Log.WriteToFile(); return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } }
public async Task<string> UptSaveEnergyAnalysis(UptSaveEnergyAnalysisParam param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.SaveEnergyAnalysis.FindAsync(param.CustId, param.YY); var md = param.md; var s = new decimal?[] { md.elec_amt_no1, md.elec_amt_no2, md.elec_amt_no3, md.elec_amt_no4, md.elec_amt_no5, md.elec_amt_no6, +md.elec_amt_no7, +md.elec_amt_no8 }; if (item != null) { md.elec_amt_use_total = (decimal)s.Sum(); md.elec_save_rate = (md.ElecSave / (md.ElecSave + md.elec_amt_year_total - md.elec_amt_use_total)) * 100; item.elec_amt_no1 = md.elec_amt_no1; item.elec_amt_no2 = md.elec_amt_no2; item.elec_amt_no3 = md.elec_amt_no3; item.elec_amt_no4 = md.elec_amt_no4; item.elec_amt_no5 = md.elec_amt_no5; item.elec_amt_no6 = md.elec_amt_no6; item.elec_amt_no7 = md.elec_amt_no7; item.elec_amt_no8 = md.elec_amt_no8; item.elec_amt_use_total = md.elec_amt_use_total; item.elec_save_rate = md.elec_save_rate; } else { md.elec_amt_use_total = (decimal)s.Sum(); md.elec_save_rate = (md.ElecSave / (md.ElecSave + md.elec_amt_year_total - md.elec_amt_use_total)) * 100; db.SaveEnergyAnalysis.Add(md); } await db.SaveChangesAsync(); RecordReportList(param.CustId, param.YY, "JA3"); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.Message + ex.StackTrace; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> UptPlanYearPlane_2015(UptPlanYearPlane_2015Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.PlanYearPlane_2015.FindAsync(param.CustId, param.YY); var md = param.md; if (item != null) { item.C_104 = md.C_104; item.S_104 = md.S_104; item.R_104 = md.R_104; item.I_104 = md.I_104; item.C_105 = md.C_105; item.S_105 = md.S_105; item.R_105 = md.R_105; item.I_105 = md.I_105; item.C_106 = md.C_106; item.S_106 = md.S_106; item.R_106 = md.R_106; item.I_106 = md.I_106; item.C_107 = md.C_107; item.S_107 = md.S_107; item.R_107 = md.R_107; item.I_107 = md.I_107; item.C_108 = md.C_108; item.S_108 = md.S_108; item.R_108 = md.R_108; item.I_108 = md.I_108; } else { db.PlanYearPlane_2015.Add(md); } await db.SaveChangesAsync(); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> InsEnergyPushState(EnergyPushState md) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(md.CustID); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { db.EnergyPushState.Add(md); await db.SaveChangesAsync(); db.Dispose(); RecordReportList(md.CustID, md.YY, "J42"); r.result = true; return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } }
private void RecordReportList(string CustId, int YY, string ReportNO) { var db = new EnergyNetEntities(); var item = db.ReportList_2015.Find(new object[] { CustId, YY, ReportNO }); if (item == null) { var md = new ReportList_2015(); md.YY = YY; md.CustID = CustId; md.ReportNO = ReportNO; md.FinalDate = DateTime.Now; db.ReportList_2015.Add(md); } else { item.FinalDate = DateTime.Now; } db.SaveChanges(); db.Dispose(); }
public async Task<string> UptPlanEnergyAnalysis(UptPlanEnergyAnalysisParam param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.PlanEnergyAnalysis.FindAsync(param.CustId, param.YY); var md = param.md; var s = new decimal?[] { md.no1_amt, md.no2_amt }; if (item != null) { item.no_sum = s.Sum(); item.cale_type = md.cale_type; if (md.cale_type == "1") { md.use_rate = (md.ElecSave / (md.ElecSave + md.use_104_amt - md.no_sum)) * 100; } if (md.cale_type == "2") { md.use_rate = (md.ElecSave / (md.ElecSave + md.use_other_value)) * 100; } item.ElecSave = md.ElecSave; item.use_104_amt = md.use_104_amt; item.no1_amt = md.no1_amt; item.no2_amt = md.no2_amt; item.use_rate = md.use_rate; item.use_other_memo = md.use_other_memo; item.use_other_value = md.use_other_value; } else { md.no_sum = (decimal)s.Sum(); if (md.cale_type == "1") { md.use_rate = (md.ElecSave / (md.ElecSave + md.use_104_amt - md.no_sum)) * 100; } if (md.cale_type == "2") { md.use_rate = (md.ElecSave / (md.ElecSave + md.use_other_value - md.no_sum)) * 100; } db.PlanEnergyAnalysis.Add(md); } await db.SaveChangesAsync(); RecordReportList(param.CustId, param.YY, "JB3"); r.result = true; } catch (DbEntityValidationException ex) { r.result = false; r.message = getDbEntityValidationException(ex); return defJSON(r); } catch (Exception ex) { r.result = false; r.message = getException(ex); return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> UptExamineReport_Record(UptExamineReport_RecordParm param) { var db = new EnergyNetEntities(); var tran = db.Database.BeginTransaction(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { #region Check Code var report_items = await db.ReportList_2015.Where(x => x.YY == param.YY && x.CustID == param.CustId).ToListAsync(); IList<string> messages = new List<string>(); var itmA = await db.SaveEnergyAnalysis.FindAsync(new object[] { param.CustId, param.YY }); var itmB = await db.PlanEnergyAnalysis.FindAsync(new object[] { param.CustId, param.YY }); var power = db.NotApplyCustID.Where(x => x.cust_id == param.CustId).FirstOrDefault(); decimal? itmC = 0; decimal? itmD = 0; if (itmA != null) { itmC = itmA.elec_save_rate; } if (itmB != null) { itmD = itmB.use_rate; } if (power == null) { if (!report_items.Any(x => x.ReportNO == "JA4") && itmC < 1) { messages.Add("10.4、104年執行計畫平均年節電率未達1%說明 尚未填寫"); } if (itmD == null && itmD < 1 && !report_items.Any(x => x.ReportNO == "JB4")) { messages.Add("11.4、105年執行計畫年度節電率未達1%說明 尚未填寫"); } } var ck_5_4 = await CheckFloorElecQY(param.CustId, param.YY); var ck_5_5 = await CheckFloorHeatQY(param.CustId, param.YY); Log.Write(ck_5_4); Log.Write(ck_5_5); var de_5_4 = JsonConvert.DeserializeObject<CheckFloorElec>(ck_5_4); var de_5_5 = JsonConvert.DeserializeObject<CheckFloorHeat>(ck_5_5); Log.Write(de_5_4.q.Count().ToString()); Log.Write((de_5_4.y == null).ToString()); Log.WriteToFile(); if (report_items != null) { if (!report_items.Any(x => x.ReportNO == "J42")) { messages.Add("4.2 能源管理政策推動情形 尚未填寫"); } if (!report_items.Any(x => x.ReportNO == "J54")) { if (power != null && power.cust_name.Contains("變電站")) { } else { messages.Add("5.4 電能績效自我評比表 尚未填寫"); if (de_5_4.q.Count() > 0 || de_5_4.y != null) { messages.Add("5.4 電能績效自我評比表 資料尚未填寫完整"); } } } if (!report_items.Any(x => x.ReportNO == "J55")) { if (power != null && power.cust_name.Contains("變電站")) { } else { messages.Add("5.5 熱能績效自我評比表 尚未填寫"); if (de_5_5.q.Count() > 0 || de_5_5.y != null) { messages.Add("5.5 熱能績效自我評比表 資料尚未填寫完整"); } } } if (!report_items.Any(x => x.ReportNO == "J95")) { messages.Add("9.5 重大使用能源設備登錄表 尚未填寫"); } if (!report_items.Any(x => x.ReportNO == "JA1")) { messages.Add("10.1 104年節約能源改善方案具體成效分析表 尚未填寫"); } if (!report_items.Any(x => x.ReportNO == "JA3")) { messages.Add("10.3 104年執行計畫之平均年節電率 尚未填寫"); } if (!report_items.Any(x => x.ReportNO == "JB1")) { messages.Add("11.1 105年節約能源措施執行計畫表 尚未填寫"); } if (!report_items.Any(x => x.ReportNO == "JB3")) { messages.Add("11.3 105年執行計畫之年度節電率 尚未填寫"); } } var ck_9_1 = await CheckAirConditioning_2015IsOk(param.CustId, param.YY, null); var ck_9_3 = await CheckOtherElecPlant_2015IsOk(param.CustId, param.YY, null); Log.Write(new string[] { "ck 91", ck_9_1 }); Log.Write(new string[] { "ck 93", ck_9_3 }); Log.WriteToFile(); var de_9_1 = JsonConvert.DeserializeObject<CKBuildAir>(ck_9_1); var de_9_3 = JsonConvert.DeserializeObject<CKBuildAir>(ck_9_3); if (de_9_1.Builds.Count() > 0) { messages.Add("9.1 空調系統 資料尚未填寫完整"); } if (de_9_3.Builds.Count() > 0) { messages.Add("9.3 其它系統 資料尚未填寫完整"); } if (messages.Count() > 0) { r.result = false; r.messages = messages.ToArray(); return defJSONNull(r); } #endregion var master = await db.ExamineReport_Master.FindAsync(new object[] { param.CustId, param.YY }); var state = "D"; if (master == null) //代表第一次提出 申報完成 { #region Add Code var checkerid = ""; var checkername = ""; var builebase = await db.BuileBase.FindAsync(new object[] { param.CustId, param.YY }); if (!string.IsNullOrEmpty(builebase.CheckerId)) { var user = await db.Tb_Login.FindAsync(builebase.CheckerId); checkerid = builebase.CheckerId; if (user != null && !string.IsNullOrEmpty(user.LoginName)) { checkername = user.LoginName; } } var md = new ExamineReport_Master(); md.YY = param.YY; md.CustID = param.CustId; md.GreenCheckState = "C"; //尚未審核 md.EconCheckState = "D"; md.DeliverDate = DateTime.Now; md.CheckerId = checkerid; md.CheckerName = checkername; md.CheckCount = 0; md.IsReject = false; md.AtuCheckerId = ""; md.State = "D"; db.ExamineReport_Master.Add(md); #endregion } else { if (master.GreenCheckState == "B") { state = master.State; master.FixDate = DateTime.Now; //補正日期 master.GreenCheckState = "D"; //補正尚未審核 master.IsReject = false; master.State = "D"; } } var detail = await db.ExamineReport_Record.Where(x => x.YY == param.YY && x.CustID == param.CustId) .OrderByDescending(x => x.examine_report_record_id) .FirstOrDefaultAsync(); if (detail != null && state == "D") { var diff = DateTime.Now - (DateTime)detail.DeliverDate; Log.Write(new string[] { "Check UptExamineReport diff", diff.Days.ToString() }); if (diff.Days == 0) { detail.DeliverDate = DateTime.Now; } else { //如果超過一天 要新增新的 var md = param.md; if (detail.CheckType == "B") { detail.DeliverDate = null; //這是上一筆 } md.DeliverDate = DateTime.Now; db.ExamineReport_Record.Add(md); } } else if (detail == null) { var md = param.md; md.DeliverDate = DateTime.Now; db.ExamineReport_Record.Add(md); } else if (detail != null && state == "F") { detail.FixDate = DateTime.Now; var md = param.md; md.DeliverDate = DateTime.Now; db.ExamineReport_Record.Add(md); } var item2 = await db.ExamineReport.FindAsync(new object[] { param.CustId, param.YY }); var frmDate = DateTime.Parse(DateTime.Now.ToString("yyyy/MM/dd 00:00:00")); if (item2 != null) { item2.Finish = "Y"; item2.MDate = frmDate; } else { var md = new ExamineReport() { CustID = param.CustId, YY = param.YY, Finish = "Y", MDate = frmDate }; db.ExamineReport.Add(md); } await db.SaveChangesAsync(); r.result = true; tran.Commit(); } catch (Exception ex) { tran.Rollback(); r.result = false; r.message = getException(ex) + ex.StackTrace; return defJSON(r); } finally { tran.Dispose(); db.Dispose(); } return defJSON(r); }
public async Task<string> UptPlanNotGoal(UptPlanNotGoalParam param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.PlanNotGoal.FindAsync(param.CustId, param.YY); var md = param.md; if (item != null) { item.no1_text = md.no1_text; item.no2_text = md.no2_text; item.no3_fam_text = md.no3_fam_text; item.no3_fam_select = md.no3_fam_select; item.no3_fam_select_5_memo = md.no3_fam_select_5_memo; item.no3_eff_100 = md.no3_eff_100; item.no3_eff_101 = md.no3_eff_101; item.no3_eff_102 = md.no3_eff_102; item.no3_eff_103 = md.no3_eff_103; item.no3_eff_104 = md.no3_eff_104; item.no3_eff_rate = md.no3_eff_rate; item.no3_save_text = md.no3_save_text; item.no3_save_amt_100 = md.no3_save_amt_100; item.no3_save_amt_101 = md.no3_save_amt_101; item.no3_save_amt_102 = md.no3_save_amt_102; item.no3_save_amt_103 = md.no3_save_amt_103; item.no3_save_amt_104 = md.no3_save_amt_104; item.no3_use_amt_100 = md.no3_use_amt_100; item.no3_use_amt_101 = md.no3_use_amt_101; item.no3_use_amt_102 = md.no3_use_amt_102; item.no3_use_amt_103 = md.no3_use_amt_103; item.no3_use_amt_104 = md.no3_use_amt_104; item.no5_text_1 = md.no5_text_1; item.no5_text_2 = md.no5_text_2; item.no5_text_3 = md.no5_text_3; item.no5_text_4 = md.no5_text_4; item.no7_text = md.no7_text; item.no6_text = md.no6_text; item.no3_save_rate = md.no3_save_rate; item.no_goal_havesave_option = md.no_goal_havesave_option; item.no0_text = md.no0_text; item.no0_year_amt = md.no0_year_amt; item.elec_use_100 = md.elec_use_100; item.elec_use_101 = md.elec_use_101; item.elec_use_102 = md.elec_use_102; item.elec_use_103 = md.elec_use_103; item.elec_use_104 = md.elec_use_104; item.sour_use_100 = md.sour_use_100; item.sour_use_101 = md.sour_use_101; item.sour_use_102 = md.sour_use_102; item.sour_use_103 = md.sour_use_103; item.sour_use_104 = md.sour_use_104; } else { db.PlanNotGoal.Add(md); } await db.SaveChangesAsync(); RecordReportList(param.CustId, param.YY, "JB4"); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> GetGradData(string CustId, int YY, string pno, string checkerid) { var db = new EnergyNetEntities(); var r = new AjaxResult<IEnumerable<Graid_Detail>>(); try { #region Code var item1 = await db.ExamineReport_Master.FindAsync(new object[] { CustId, YY }); if (item1 == null) { r.message = "無申報完成項目記錄"; r.result = false; } var item2 = await db.ExamineReport_Record .Where(x => x.CustID == CustId && x.YY == YY).OrderByDescending(x => x.examine_report_record_id).FirstOrDefaultAsync(); if (item2 == null) { r.message = "無申報完成項明細目記錄"; r.result = false; } var examine_report_record_id = item2.examine_report_record_id; var item3 = await db.Grad.Where(x => x.examine_report_record_id == examine_report_record_id) .OrderByDescending(x => x.grad_id) .FirstOrDefaultAsync(); var master_id = item3.grad_id; #endregion var item4 = await db.Graid_Detail.Where(x => x.graid_id == master_id && x.repord_id == pno) .ToListAsync(); r.data = item4; r.result = true; } catch (Exception ex) { r.result = false; r.message = getException(ex); throw; } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> UptEnergyPushState(UptEnergyPushStateParm obj) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); Log.Write("Check Put", obj.CustId, obj.YY.ToString()); Log.WriteToFile(); var pass_state = StateCheck(obj.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var item = await db.EnergyPushState.FindAsync(new object[] { obj.CustId, obj.YY }); var md = obj.md; item.push_no_1 = md.push_no_1; item.push_no_2 = md.push_no_2; item.push_no_3 = md.push_no_3; item.push_no_4 = md.push_no_4; item.push_no_5 = md.push_no_5; item.push_no_6 = md.push_no_6; item.push_no_7 = md.push_no_7; item.push_no_8 = md.push_no_8; item.push_no_9 = md.push_no_9; item.push_no_10 = md.push_no_10; item.push_no_10_memo = md.push_no_10_memo; item.push_no_11 = md.push_no_11; item.push_no_11_memo = md.push_no_11_memo; item.push_no_12 = md.push_no_12; item.push_no_12_memo = md.push_no_12_memo; item.push_no_13 = md.push_no_13; item.push_no_13_memo = md.push_no_13_memo; item.push_no_14 = md.push_no_14; item.push_no_14_memo = md.push_no_14_memo; item.push_no_15 = md.push_no_15; item.push_no_15_memo = md.push_no_15_memo; item.push_no_1_year = md.push_no_1_year; item.push_no_1_near_year = md.push_no_1_near_year; await db.SaveChangesAsync(); db.Dispose(); RecordReportList(md.CustID, md.YY, "J42"); r.result = true; return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } }
public async Task<string> UptGradItem(UptGradItemParm param) { var db = new EnergyNetEntities(); var r = new AjaxResult<IEnumerable<Graid_Detail>>(); try { var item1 = await db.ExamineReport_Master.FindAsync(new object[] { param.CustId, param.YY }); if (item1 == null) { r.message = "無申報完成項目記錄"; r.result = false; } var item2 = await db.ExamineReport_Record .Where(x => x.CustID == param.CustId && x.YY == param.YY).OrderByDescending(x => x.examine_report_record_id).FirstOrDefaultAsync(); if (item2 == null) { r.message = "無申報完成項明細目記錄"; r.result = false; } var examine_report_record_id = item2.examine_report_record_id; var item3 = await db.Grad.Where(x => x.CustId == param.CustId && x.YY == param.YY && x.examine_report_record_id == examine_report_record_id) .OrderByDescending(x => x.grad_id) .FirstOrDefaultAsync(); if (item3 == null) { r.message = "無申評核主檔"; r.result = false; } item3.checker = param.checkerid; item3.check_date = DateTime.Now; await db.SaveChangesAsync(); var master_id = item3.grad_id; var item4 = await db.Graid_Item .Where(x => x.graid_id == master_id && x.repord_id == param.pno && x.item == param.item) .ToListAsync(); if (item4.Count() > 0) { db.Graid_Item.RemoveRange(item4); } foreach (var item in param.md) { var md = new Graid_Item(); md.graid_id = master_id; md.repord_id = param.pno; md.opt_id = item.opt_id; md.item = item.item; md.mem = item.mem; db.Graid_Item.Add(md); } await db.SaveChangesAsync(); r.result = true; } catch (Exception ex) { r.result = false; r.message = getException(ex); throw; } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> InsPlanNotGoal_No4(InsPlanNotGoal_No4Param param) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(param.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var md = param.md; md.item = (new Random()).Next(1000, 2000); db.PlanNotGoal_No4.Add(md); await db.SaveChangesAsync(); RItemPlanNotGoal_No4(md.CustID, md.YY); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.ToString(); Log.Write(ex.ToString()); Log.WriteToFile(); return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }
public async Task<string> UptFloorElecYear(UptUptFloorElecYearParm obj) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); var pass_state = StateCheck(obj.CustId); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } try { var e = await db.FloorElecYear .AnyAsync(x => x.CustID == obj.CustId && x.YY == obj.YY); if (e) { var item = await db.FloorElecYear.FindAsync(obj.CustId, obj.YY); var md = obj.md; item.d_q_no1 = md.d_q_no1; item.d_q_no2 = md.d_q_no2; item.d_q_no3 = md.d_q_no3; item.d_q_no4 = md.d_q_no4; item.d_q_no5 = md.d_q_no5; item.d_q_no6 = md.d_q_no6; item.d_q_no7 = md.d_q_no7; item.d_q_no7_memo = md.d_q_no7_memo; item.i_q_no1 = md.i_q_no1; item.i_q_no2 = md.i_q_no2; item.i_q_no3 = md.i_q_no3; item.i_q_no4 = md.i_q_no4; item.i_q_no5 = md.i_q_no5; item.i_q_no6 = md.i_q_no6; item.i_q_no7 = md.i_q_no7; item.i_q_no7_memo = md.i_q_no7_memo; item.reason = md.reason; item.i_q_no8 = md.i_q_no8; item.i_q_no9 = md.i_q_no9; } else { //db.FloorElecQ.Add(obj.md); } await db.SaveChangesAsync(); r.result = true; return defJSON(r); } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } }
public async Task<string> UptEquipAssign(IEnumerable<EquipUseState> mds) { var db = new EnergyNetEntities(); AjaxResult r = new AjaxResult(); try { var custid = string.Empty; var yy = 0; var f = mds.FirstOrDefault(); if (f != null) { custid = f.CustID; yy = f.YY; RecordReportList(custid, yy, "J95"); var pass_state = StateCheck(custid); if (pass_state == 1) { r.result = false; r.message = "初審已通過不可更新!"; return defJSON(r); } } foreach (var md in mds) { var item = await db.EquipUseState.FindAsync(new object[] { md.CustID, md.YY, md.system_type, md.PNO }); item.maintain_state = md.maintain_state; item.operator_state = md.operator_state; } await db.SaveChangesAsync(); r.result = true; } catch (Exception ex) { r.result = false; r.message = ex.Message; return defJSON(r); } finally { db.Dispose(); } return defJSON(r); }