Example #1
0
        public bool SaveCheck2(Check_Model model, List <T_StockInfoEX> list, ref string ErrMsg)
        {
            Check_DB db = new Check_DB();

            return(db.SaveCheck2(model, list, ref ErrMsg));
        }
Example #2
0
        //保存盘点单
        public JsonResult SaveCheck(T_StockInfoEX model)
        {
            try
            {
                if (string.IsNullOrEmpty(model.WarehouseNo))
                {
                    return(Json(new { state = false }, JsonRequestBehavior.AllowGet));
                }
                T_WareHouse_DB TWareHouseDB       = new T_WareHouse_DB();
                string         StrongHoldCode     = "";
                string         StrongHoldCodeName = "";
                TWareHouseDB.GetStrongholdcode(model.WarehouseNo, ref StrongHoldCode, ref StrongHoldCodeName);

                Check_DB checkdb  = new Check_DB();
                string   ErrorMsg = "";
                if (!checkdb.CheckIsSvae(model.MaterialNo, model.WarehouseNo, ref ErrorMsg))
                {
                    return(Json(new { state = false, ErrMsg = "待发或者待收库区有该物料不能生成盘点单!【" + ErrorMsg + "】" }, JsonRequestBehavior.AllowGet));
                }


                string strErrMsg             = string.Empty;
                List <T_StockInfoEX> lsttask = new List <T_StockInfoEX>();
                Query_DB             db      = new Query_DB();
                if (!db.GetStockCombineInfo2(model, ref lsttask, ref strErrMsg))
                {
                    return(Json(new { Result = 0, ErrMsg = strErrMsg }, JsonRequestBehavior.AllowGet));
                }
                if (model.Check == "0")
                {
                    //检验WMS库存和U9是否一致
                    T_Material_Batch_Func FUNC      = new T_Material_Batch_Func();
                    List <U9Stock>        erp_stock = FUNC.GetStockInfo(model.WarehouseNo, StrongHoldCode, model.MaterialNo);
                    bool isOk = true;
                    lsttask.ForEach(itemWMS =>
                    {
                        if (erp_stock.FindAll(itemerp => { return(itemerp.MaterialNo == itemWMS.MaterialNo && itemerp.BatchNo == itemWMS.BatchNo && itemerp.Qty == itemWMS.Qty); }).Count != 1)
                        {
                            isOk = false;
                        }
                    });
                    if (!isOk)
                    {
                        return(Json(new { state = false, ErrMsg = "WMS库存和U9不匹配不能生成盘点单!" }, JsonRequestBehavior.AllowGet));
                    }
                }



                Check_Model cm = new Check_Model();
                //cm.REMARKS = strremark + txt_remarkD.Text + txt_remark.Text;
                cm.CHECKSTATUS = "新建";
                cm.CREATER     = currentUser.UserNo;
                cm.CHECKDESC   = "明盘";
                string ErrMsg = "";
                if (checkdb.SaveCheck2(cm, lsttask, ref ErrMsg))
                {
                    return(Json(new { state = true }, JsonRequestBehavior.AllowGet));
                }
                return(Json(new { state = false }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new { state = false, ErrMsg = ex.ToString() }, JsonRequestBehavior.AllowGet));
            }
        }