public Frm扫码下单(Enum进出库类型 enum进出库类型) { InitializeComponent(); this.enum进出库类型 = enum进出库类型; if (this.enum进出库类型.Equals(Enum进出库类型.期初)) { this.dockPanel扫码.Text = "新建期初"; this.label扫码.Text = "请扫码创建期初"; } else if (this.enum进出库类型.Equals(Enum进出库类型.入库)) { this.dockPanel扫码.Text = "入库"; this.label扫码.Text = "请扫码入库"; } else if (this.enum进出库类型.Equals(Enum进出库类型.出库)) { this.dockPanel扫码.Text = "出库"; this.label扫码.Text = "请扫码出库"; } else if (this.enum进出库类型.Equals(Enum进出库类型.调拨)) { this.dockPanel扫码.Text = "调拨"; this.label扫码.Text = "请扫码调拨"; this.searchLookUpEdit1.Enabled = true; this.searchLookUpEdit1.Properties.DataSource = ShopService.getShopAll(); } this.gridControl1.DataSource = StockService.getStopStockAll(); this.gridView1.ExpandAllGroups(); }
/// <summary> /// 指定门店出入库 /// </summary> /// <param name="enum进出库类型"></param> /// <param name="barCode"></param> /// <param name="shop_id"></param> private static void generate门店扫码出入库(Enum进出库类型 enum进出库类型, String barCode, String shop_id) { String sql = "SELECT dispath_type FROM a_noorder_print_p WHERE clothes_log_id = '" + barCode + "'"; DataTable dataTable = SQLmtm.GetDataTable(sql); if (dataTable.Rows.Count == 0) { throw new Exception("条码" + barCode + "不存在!"); } else { Enum在库类别 enum在库类别; try { enum在库类别 = (Enum在库类别)Convert.ToInt32(dataTable.Rows[0]["dispath_type"].ToString()); } catch { enum在库类别 = Enum在库类别.成品仓; } if (enum在库类别.Equals(Enum在库类别.已出库) && enum进出库类型.Equals(Enum进出库类型.出库)) { throw new Exception("条码" + barCode + "已出库!"); } if (enum在库类别.Equals(Enum在库类别.在库) && enum进出库类型.Equals(Enum进出库类型.入库)) { throw new Exception("条码" + barCode + "已入库!"); } } // 生成库存明细账 sql = "INSERT INTO t_inventory_sub_ledger ( shop_id, ref_style_id, style_fabric_id, amount, bill_id, STYLE_SIZE_CD, create_date ) SELECT\n" + shop_id + ",\n" + "style_id,\n" + "materials_id,\n"; if (enum进出库类型.Equals(Enum进出库类型.出库)) { sql += "-1,\n"; } else { sql += "1,\n"; } sql += "clothes_log_id,\n" + "size_cd,\n" + "now( ) \n" + "FROM\n" + " a_noorder_print_p \n"+ "WHERE\n" + " clothes_log_id = '"+ barCode + "'"; SQLmtm.ExecuteSql(sql); // 更新库存状态 sql = "update a_noorder_print_p set dispath_type = '" + (int)getEnum在库类别(enum进出库类型) + "' WHERE clothes_log_id = '" + barCode + "'"; SQLmtm.ExecuteSql(sql); }
/// <summary> /// 出入库 /// </summary> /// <param name="enum进出库类型"></param> /// <param name="barCode"></param> public static void generateLedge(Enum进出库类型 enum进出库类型, String barCode, String shopId) { switch (enum进出库类型) { case Enum进出库类型.调拨: generate门店扫码调拨(barCode, shopId); break; default: generate门店扫码出入库(enum进出库类型, barCode); break; } }
/// <summary> /// 根据进出库类型更新在库类别 /// </summary> /// <param name="enum进出库类型"></param> /// <returns></returns> private static Enum在库类别 getEnum在库类别(Enum进出库类型 enum进出库类型) { switch (enum进出库类型) { case Enum进出库类型.入库: return(Enum在库类别.在库); case Enum进出库类型.出库: return(Enum在库类别.已出库); default: return(Enum在库类别.成品仓); } }