protected void Page_Load(object sender, EventArgs e) { switch (RequestActionString) { case "batchdelete": IList <object> idList = RequestData.GetList <object>("IdList"); if (idList != null && idList.Count > 0) { foreach (object obj in idList) { InWarehouse[] iwEnts = InWarehouse.FindAllByProperties("PublicInterface", obj.ToString()); if (iwEnts.Length > 0) { OtherInWarehouseDetail.DeleteAll("InWarehouseId='" + iwEnts[0].Id + "'"); InWarehouse.DeleteAll("PublicInterface='" + obj.ToString() + "'"); } DeliveryOrder[] doEnts = DeliveryOrder.FindAllByProperties("PId", obj.ToString()); if (doEnts.Length > 0) { DelieryOrderPart.DeleteAll("DId='" + doEnts[0].Id + "'"); DeliveryOrder.DeleteAll("PId='" + obj.ToString() + "'"); } DataHelper.ExecSql("delete SHHG_AimExamine..WarehouseExchange where Id='" + obj.ToString() + "'"); DataHelper.ExecSql("delete SHHG_AimExamine..WarehouseExchangeDetail where WarehouseExchangeId='" + obj.ToString() + "'"); PageState.Add("Message", "删除成功!"); } } break; default: DoSelect(); break; } }
protected void Page_Load(object sender, EventArgs e) { string db = ConfigurationManager.AppSettings["ExamineDB"]; op = RequestData.Get <string>("op"); id = RequestData.Get <string>("id"); paid = RequestData.Get <string>("paid"); PAState = RequestData.Get <string>("PAState"); type = RequestData.Get <string>("type"); SaleOrder ent = null; IList <string> strList = RequestData.GetList <string>("data"); switch (this.RequestAction) { case RequestActionEnum.Update: ent = this.GetMergedData <SaleOrder>(); if (PAState == "Yes") { ent.PAState = "待审核"; ent.PANumber = DataHelper.QueryValue("select " + db + ".dbo.fun_getPriceAppNumber()") + ""; } else { ent.PAState = ""; ent.PANumber = ""; } ent.DoUpdate(); //处理OrdersPart表 //删除 OrdersPart.DeleteAll("OId='" + ent.Id + "'"); //添加 InsertProPart(ent, strList); //创建价格申请单 if (PAState == "Yes") { CreatePriceApply(ent); } #region 除出库单表并更新销售单状态 if (RequestData.Get <string>("del") == "yes") { DeliveryOrder[] dorders = DeliveryOrder.FindAllByProperty("PId", ent.Id); foreach (DeliveryOrder dorder in dorders) { DelieryOrderPart.DeleteAll("DId='" + dorder.Id + "'"); DeliveryOrder.DeleteAll("Id='" + dorder.Id + "'"); } //更新出库单状态 OrdersPart[] ops = OrdersPart.FindAllByProperty("OId", ent.Id); foreach (OrdersPart opt in ops) { if (opt != null) { opt.OutCount = 0; opt.DoSave(); } } //更新order的json string jsons = ""; ops = OrdersPart.FindAllByProperty("OId", ent.Id); foreach (OrdersPart opt in ops) { jsons += "{"; jsons += "Id:'" + opt.PId + "',"; jsons += "Isbn:'" + opt.Isbn + "',"; jsons += "Code:'" + opt.PCode + "',"; jsons += "Name:'" + opt.PName + "',"; jsons += "Unit:'" + opt.Unit + "',"; jsons += "MinSalePrice:'" + opt.MinSalePrice + "',"; jsons += "Price:'" + opt.SalePrice + "',"; jsons += "Amount:'" + opt.Amount + "',"; jsons += "Count:'" + opt.Count + "',"; jsons += "OutCount:'" + opt.OutCount + "',"; jsons += "Remark:'" + opt.Remark + "'"; jsons += "},"; } string count = DataHelper.QueryValue("select count(1) from " + db + "..OrdersPart where OId='" + ent.Id + "' and OutCount=[Count]") + ""; if (count == "0") { ent.DeliveryState = ""; } else { ent.DeliveryState = "部分生成出库单"; } ent.Child = "[" + jsons.Substring(0, jsons.Length - 1) + "]"; ent.DoUpdate(); } #endregion this.SetMessage("修改成功!"); break; case RequestActionEnum.Insert: case RequestActionEnum.Create: ent = this.GetPostedData <SaleOrder>(); if (PAState == "Yes") { ent.PAState = "待审核"; ent.PANumber = DataHelper.QueryValue("select " + db + ".dbo.fun_getPriceAppNumber()") + ""; } ent.PId = paid; //自动生成流水号 ent.Number = DataHelper.QueryValue("select " + db + ".dbo.fun_getOrderNumber()") + ""; ent.DoCreate(); //处理OrdersPart表 //添加 InsertProPart(ent, strList); //创建价格申请单 if (PAState == "Yes") { CreatePriceApply(ent); } this.SetMessage("新建成功!"); break; case RequestActionEnum.Delete: ent = this.GetTargetData <SaleOrder>(); ent.DoDelete(); this.SetMessage("删除成功!"); return; default: if (RequestActionString == "submitfinish") { SaleOrder pc = SaleOrder.Find(this.RequestData.Get <string>("id")); pc.State = "End"; pc.DeliveryState = "已生成出库单"; pc.ApprovalState = this.RequestData.Get <string>("ApprovalState"); pc.Save(); //自动生成发货单 if (pc.ApprovalState == "同意") { DeliveryOrder dor = new DeliveryOrder { Child = pc.Child, CId = pc.Id, WarehouseId = pc.WarehouseId, WarehouseName = pc.WarehouseName, CName = pc.CName, CreateId = UserInfo.UserID, CreateName = UserInfo.Name, CreateTime = DateTime.Now, ExpectedTime = pc.ExpectedTime, Number = DateTime.Now.ToString("yyyyMMddHHmmss") }; dor.DoCreate(); } } else if (RequestActionString == "inputexcel") { string path = @"D:\RW\Files\AppFiles\Portal\Default\" + RequestData.Get <string>("path"); string strcn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1';"; //连接字符串 #region 遍历整个excel //DataSet ds = GetDataFromExcel(path); ////遍历DataSet取数据 ////清除无效行 //ds.Tables[0].Rows.RemoveAt(0); //ds.Tables[0].Rows.RemoveAt(0); //ds.Tables[0].Rows.RemoveAt(0); //PageState.Add("error", "Tables:" + ds.Tables.Count + " Table[0]:" + ds.Tables[0].Select("F4 <> ''").Length + "数量" + ds.Tables[0].Rows[0][3]); //return; #endregion #region old try { string sql = "select * from [Sheet1$]"; OleDbDataAdapter oldr = new OleDbDataAdapter(sql, strcn); //读取数据,并填充到DATASET里 DataTable dt = new DataTable(); oldr.Fill(dt); if (dt.Rows.Count > 0) { string strjson = RequestData.Get <string>("json").Replace("[]", ""); if (strjson.Length > 0) { strjson = strjson.Substring(1, strjson.Length - 2) + ","; } DataRow row = null; for (int i = 0; i < dt.Rows.Count; i++) { row = dt.Rows[i]; strjson += "{"; strjson += "Id:'" + row["Id"] + "',"; strjson += "Isbn:'" + row["Isbn"] + "',"; strjson += "Code:'" + row["Code"] + "',"; strjson += "Name:'" + row["Name"] + "',"; strjson += "Unit:'" + row["Unit"] + "',"; strjson += "MinSalePrice:'" + row["MinSalePrice"] + "',"; strjson += "Price:'" + row["MinSalePrice"] + "',"; strjson += "Amount:'" + row["Amount"] + "',"; strjson += "Count:'" + row["Count"] + "',"; strjson += "Remark:'" + row["Remark"] + "'"; strjson += "},"; } if (strjson != "") { strjson = "[" + strjson.Substring(0, strjson.Length - 1) + "]"; PageState.Add("result", strjson); } } return; } catch (Exception ex) { PageState.Add("error", ex.Message); return; } #endregion } else if (RequestActionString == "updateAmount") { SaleOrder o = SaleOrder.TryFind(id); string TotalMoney = RequestData.Get <string>("TotalMoney"); o.DiscountAmount = RequestData.Get <decimal>("DiscountAmount"); o.TotalMoney = Convert.ToDecimal(TotalMoney); o.DoUpdate(); } break; } if (RequestActionString == "getSalesman") { string cid = RequestData.Get <string>("CId"); Customer customer = Customer.Find(cid); if (customer != null) { PageState.Add("Code", customer.Code); PageState.Add("SaleUser", customer.MagUser); PageState.Add("SaleUserId", customer.MagId); } } else if (op == "c" && !string.IsNullOrEmpty(paid)) { if (!string.IsNullOrEmpty(paid)) { PriceApply paent = PriceApply.TryFind(paid); if (paent != null) { paent.Reason = ""; paent.ApprovalState = ""; paent.ExpectedTime = null; paent.Id = ""; paent.Number = ""; paent.Remark = ""; paent.State = ""; this.SetFormData(paent); } } } else if (op != "c" && op != "cs") { if (!String.IsNullOrEmpty(id)) { ent = SaleOrder.Find(id); } this.SetFormData(ent); this.PageState.Add("State", ent.State); //查询子商品 string sql = "select Id, PId, PCode as Code, PName as Name, Isbn, Count, Unit, MinSalePrice, SalePrice as Price, Amount,CustomerOrderNo, Remark, OutCount,BillingCount from " + db + "..OrdersPart where OId='" + id + "'"; PageState.Add("DetailList", DataHelper.QueryDictList(sql)); } this.PageState.Add("FlowEnum", SysEnumeration.GetEnumDictList("WorkFlow.Simple")); PageState.Add("InvoiceType", SysEnumeration.GetEnumDict("InvoiceType")); PageState.Add("DeliveryMode", SysEnumeration.GetEnumDict("DeliveryMode")); PageState.Add("PayType", SysEnumeration.GetEnumDict("PayType")); PageState.Add("CalculateManner", SysEnumeration.GetEnumDict("CalculateManner")); }
private void DoBatchDelete() { IList <object> idList = RequestData.GetList <object>("IdList"); string db = ConfigurationManager.AppSettings["ExamineDB"]; if (idList != null && idList.Count > 0) { OrdersPart op = null; OrdersPart[] ops = null; DelieryOrderPart[] dops = null; DeliveryOrder dorder = null; SaleOrder order = null; string count = ""; //更新订单状态,同时删除DeliveryOrderPart表数据 foreach (object obj in idList) { dorder = DeliveryOrder.TryFind(obj); if (dorder == null) { DelieryOrderPart.DeleteAll("DId='" + obj + "'"); //删除DeliveryOrderPart continue; } dops = DelieryOrderPart.FindAllByProperty("DId", obj); foreach (DelieryOrderPart dop in dops) { //更新订单状态 op = OrdersPart.TryFind(dop.PId); if (op != null) { op.OutCount = (op.OutCount == null ? 0 : Convert.ToInt32(op.OutCount)) - Convert.ToInt32(dop.Count); op.DoSave(); } } //更新order的json string jsons = ""; order = SaleOrder.FindAllByProperty("Id", dorder.PId).FirstOrDefault <SaleOrder>(); if (order == null) { DelieryOrderPart.DeleteAll("DId='" + obj + "'"); //删除DeliveryOrderPart continue; } ops = OrdersPart.FindAllByProperty("OId", order.Id); //拼json foreach (OrdersPart opt in ops) { jsons += "{"; jsons += "Id:'" + opt.PId + "',"; jsons += "Isbn:'" + opt.Isbn + "',"; jsons += "Code:'" + opt.PCode + "',"; jsons += "Name:'" + opt.PName + "',"; jsons += "Unit:'" + opt.Unit + "',"; jsons += "MinSalePrice:'" + opt.MinSalePrice + "',"; jsons += "Price:'" + opt.SalePrice + "',"; jsons += "Amount:'" + opt.Amount + "',"; jsons += "Count:'" + opt.Count + "',"; jsons += "OutCount:'" + opt.OutCount + "',"; jsons += "Remark:'" + opt.Remark + "'"; jsons += "},"; } count = DataHelper.QueryValue("select count(1) from " + db + "..OrdersPart where OId='" + order.Id + "' and OutCount=[Count]") + ""; if (count == "0") { order.DeliveryState = ""; } else { order.DeliveryState = "部分生成出库单"; } order.Child = "[" + jsons.Substring(0, jsons.Length - 1) + "]"; order.DoSave(); DelieryOrderPart.DeleteAll("DId='" + obj + "'"); //删除DeliveryOrderPart } DeliveryOrder.DoBatchDelete(idList.ToArray()); } }
protected void Page_Load(object sender, EventArgs e) { string db = ConfigurationManager.AppSettings["ExamineDB"]; op = RequestData.Get <string>("op"); id = RequestData.Get <string>("id"); type = RequestData.Get <string>("type"); DeliveryOrder ent = null; IList <string> strList = RequestData.GetList <string>("data"); switch (this.RequestAction) { case RequestActionEnum.Update: ent = this.GetMergedData <DeliveryOrder>(); if (type == "xg") { ent.DoUpdate(); } else if (type == "ck") { UpdateStockInfo(strList, ent); //更新库存及唯一编号 if (ent.DeliveryType == "换货出库") { ChangeProduct dorder = ChangeProduct.TryFind(ent.PId); if (dorder != null) { if ((dorder.State + "").Contains("已入库")) { dorder.State = "已完成"; } else { dorder.State += ",仓库已出库:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm"); } dorder.DoSave(); } } //更新子商品信息(先删除,再添加) DelieryOrderPart.DeleteAll("DId='" + ent.Id + "'"); //删除DeliveryOrderPart //添加出库商品信息并更新出库单状态 ent.State = InsertPart(strList, ent.Id); ent.DoUpdate(); if (ent.DeliveryType == "调拨出库") //add by phg 20120519 跟出库单的状态保持一致 { WarehouseExchange weEnt = WarehouseExchange.Find(ent.PId); weEnt.OutWarehouseState = ent.State; weEnt.DoUpdate(); } //更新SaleOrder表出库状态 DataHelper.ExecSql("update " + db + "..SaleOrders set DeState=" + db + ".dbo.fun_getDeliveryState(Id) where id='" + ent.PId + "'"); } break; default: break; } if (RequestActionString == "getSalesman") { string cid = RequestData.Get <string>("CId"); Customer customer = Customer.Find(cid); if (customer != null) { PageState.Add("MagUser", customer.MagUser); PageState.Add("MagId", customer.MagId); PageState.Add("Address", customer.Address); // PageState.Add("Tel", customer.Tel); PageState.Add("Code", customer.Code); } } //根据压缩机唯一Id获取压缩机条码 else if (RequestActionString == "getprobyguid") { //string isbn = DataHelper.QueryValue("select ModelNo from " + db + "..Compressor where SeriesNo='" + RequestData.Get<string>("isbn") + "'") + ""; string isbn = DataHelper.QueryValue("select ModelNo from " + db + "..v_Compressor where SeriesNo='" + RequestData.Get <string>("Guid") + "' and ([State] is null or [State]<>'已出库')") + ""; PageState.Add("isbn", isbn); } //获取压缩机整版的数量及GUIDS else if (RequestActionString == "getprobyboxnum") { string boxnum = RequestData.Get <string>("boxnum"); string isbn = DataHelper.QueryValue("select ModelNo from " + db + "..v_Compressor where SkinNo='" + boxnum + "' and ([State] is null or [State]<>'已出库')") + ""; string count = DataHelper.QueryValue("select count(1) from " + db + "..v_Compressor where SkinNo='" + boxnum + "' and ([State] is null or [State]<>'已出库')") + ""; string guids = DataHelper.QueryValue("select " + db + ".dbo.fun_getGuids('" + boxnum + "')") + ""; PageState.Add("isbn", isbn); PageState.Add("count", count); PageState.Add("guids", guids); } //获取配件箱子所包含的配件数量 else if (RequestActionString == "getPJbyboxnum") { string boxnum = RequestData.Get <string>("boxnum"); sql = "select * from SHHG_AimExamine..Products where FirstSkinIsbn='" + boxnum + "' and FirstSkinCapacity is not null"; IList <EasyDictionary> dics = DataHelper.QueryDictList(sql); if (dics.Count > 0) { PageState.Add("isbn", dics[0].Get <string>("Isbn")); PageState.Add("count", dics[0].Get <int>("FirstSkinCapacity")); } sql = "select * from SHHG_AimExamine..Products where SecondSkinIsbn='" + boxnum + "' and SecondSkinCapacity is not null"; dics = DataHelper.QueryDictList(sql); if (dics.Count > 0) { PageState.Add("isbn", dics[0].Get <string>("Isbn")); PageState.Add("count", dics[0].Get <int>("SecondSkinCapacity")); } } else if (RequestActionString == "getguids") { string guids = DataHelper.QueryValue("select " + db + ".dbo.fun_getGuids('" + RequestData.Get <string>("SkinNo") + "'," + RequestData.Get <string>("Count") + ")") + ""; PageState.Add("guids", guids); } else if (op != "c" && op != "cs") { if (!String.IsNullOrEmpty(id)) { ent = DeliveryOrder.Find(id); } SetFormData(ent); PageState.Add("State", ent.State); //查询子商品 sql = "select p.Id, PId, PCode as Code, ProductId, PName as Name, c.ProductType, p.Isbn, Guids, Count,Count-(isnull(OutCount,0)) as dck, isnull(OutCount,0) as OutCount, p.Unit, p.Remark, FirstSkinIsbn,Count*(c.Weight) as TotalWeight," + db + ".dbo.fun_getProQuantity(ProductId) as StockQuan," + db + ".dbo.fun_getProQuantityByWarehouseId(ProductId,'" + ent.WarehouseId + "') as BenStockQuan from " + db + "..DelieryOrderPart p " + " left join " + db + "..Products c on c.Id=p.ProductId where DId='" + id + "'"; PageState.Add("DetailList", DataHelper.QueryDictList(sql)); } PageState.Add("DeliveryMode", SysEnumeration.GetEnumDict("DeliveryMode")); }