using NFine.Application.WMS;
using System.Data;
using System.Web.Mvc;
using NFine.Code;


namespace NFine.Web.Areas.WMS.Controllers
{
    public class ProductionRAFMRController : ControllerBase
    {

        ProductionRAFMRApp App = new ProductionRAFMRApp();
        // GET: WMS/ProductionRAFMR
        public ActionResult ICSMOApplyNegPRAFMR()
        {
            return View();
        }
        
        public ActionResult ICSMOApplyNegPRAFMRAdd()
        {
            return View();
        }
        public ActionResult ICSMOApplyNegPRAFMRUpdate()
        {
            return View();
        }
        public ActionResult SeachPRInventory()
        {
            return View();
        }

        

       [HttpGet]
        public ActionResult GetICSMOApplyNeg(Pagination pagination)
        {
            DataTable ListData = App.GetICSMOApplyNeg(ref pagination);
            var JsonData = new
            {
                total = pagination.total,
                page = pagination.page,
                records = pagination.records,
                rows = ListData,
            };
            return Content(JsonData.ToJson());
        }

        [HttpGet]
        [HandlerAjaxOnly]
        public ActionResult GetICSMOApplyNegDetail(string ApplyNegCode, Pagination pagination)
        {
            DataTable ListData = App.GetICSMOApplyNegDetail(ApplyNegCode, ref pagination);
            var JsonData = new
            {
                total = pagination.total,
                page = pagination.page,
                records = pagination.records,
                rows = ListData,
            };
            return Content(JsonData.ToJson());
        }

        [HttpPost]
        [HandlerAjaxOnly]
        [ValidateAntiForgeryToken]
        public ActionResult DeleteICSMOApplyNeg(string keyValue)
        {
            string msg = App.DeleteICSMOApplyNeg(keyValue);
            if (string.IsNullOrEmpty(msg))
            {
                return Success("删除成功!");
            }
            else
            {
                return Error(msg);
            }
        }

        public ActionResult GetICSReturnTemporary(string rfqno, Pagination pagination)
        {
            DataTable table = App.GetICSReturnTemporary(rfqno);
            var JsonData = new
            {
                total = pagination.total,
                page = pagination.page,
                records = pagination.records,
                rows = table
            };
            return Content(JsonData.ToJson());

        }

        [HttpGet]
        public ActionResult GetINV(string invcode, Pagination pagination)
        {
            DataTable ListData = App.GetINV(invcode, ref pagination);
            var JsonData = new
            {
                total = pagination.total,
                page = pagination.page,
                records = pagination.records,
                rows = ListData,
            };
            return Content(JsonData.ToJson());
        }

        public void AddMOApplyNegTemp(string json)
        {
            App.AddMOApplyNegTemp(json);
        }

        [HttpPost]
        [HandlerAjaxOnly]
        public ActionResult SaveICSMOApplyNeg(string ICSASN)
        {

            string msg = App.SaveICSMOApplyNeg(ICSASN);
            if (!string.IsNullOrEmpty(msg))
            {
                return Error(msg);
            }
            else
            {
                return Success("添加成功!");
            }
        }
        public void ClearTemp()
        {
            App.ClearTemp();
        }


        public ActionResult GetICSMOApplyNegDetailTemp(string ApplyNegCode, Pagination pagination)
        {
            DataTable table = App.GetICSMOApplyNegDetailTemp(ApplyNegCode);
            var JsonData = new
            {
                total = pagination.total,
                page = pagination.page,
                records = pagination.records,
                rows = table
            };
            return Content(JsonData.ToJson());

        }
        public void UpdateMOApplyNegTemp(string json)
        {
            App.UpdateMOApplyNegTemp(json);
        }

        [HttpPost]
        [HandlerAjaxOnly]
        public ActionResult AuditICSMOApplyNeg(string ICSASN)
        {

            string msg = App.AuditICSMOApplyNeg(ICSASN);
            if (!string.IsNullOrEmpty(msg))
            {
                return Error(msg);
            }
            else
            {
                return Success("审核成功!");
            }
        }
        [HttpPost]
        [HandlerAjaxOnly]
        public ActionResult UpdateICSMOApplyNeg(string ICSASN)
        {

            string msg = App.UpdateICSMOApplyNeg(ICSASN);
            if (!string.IsNullOrEmpty(msg))
            {
                return Error(msg);
            }
            else
            {
                return Success("修改成功!");
            }
        }

    }
}