public ReturnTypeModel(COPR16Entities dbModel)
        {
            db = dbModel;

            this.MSTYPE_LIST      = new List <SelectListItem>();
            this.cOPR16_RTDT_MSTR = new COPR16_RTDT_MSTR();
            foreach (var row in db.COPR16_MEASURETYPE_MSTR.Where(l => l.FLGACT == true))
            {
                MSTYPE_LIST.Add(new SelectListItem {
                    Text = row.MSTYPE_NAME, Value = row.MSTYPE_ID
                });
            }
        }
        public async Task <ActionResult> RemoveRDTD(string id, string rtdtid, string username)
        {
            //COPR16_OPTDTVALUE_MSTR cOPR16_OPTDTVALUE_MSTR = await db.COPR16_OPTDTVALUE_MSTR.FindAsync(id);
            //List<COPR16_MEASURETYPE_MSTR> cOPR16_MEASURETYPE_MSTR = await db.COPR16_MEASURETYPE_MSTR.Where(l => l.MSTYPE_ID.Contains(id)).ToListAsync();
            COPR16_RTDT_MSTR dtdt = db.COPR16_RTDT_MSTR.Where(row => row.RTTYPE_ID.Contains(id) && row.RTDT_ID.Contains(rtdtid) && row.FLGACT.Value == true).FirstOrDefault();

            if (dtdt != null)
            {
                dtdt.MOD_BY          = username;
                dtdt.MOD_DATE        = AppPropModel.today;
                dtdt.FLGACT          = false;
                db.Entry(dtdt).State = EntityState.Modified;
                await db.SaveChangesAsync();
            }
            return(View());
        }
        public async Task <ActionResult> CreateJson(
            string rt_id,
            string rt_name,
            string rt_desc,
            string flgact,

            string username,
            List <ReturnDetial> jsonString)
        {
            COPR16_RETURNTYPE_MSTR cOPR16_RETURNTYPE_MSTR = new COPR16_RETURNTYPE_MSTR();

            cOPR16_RETURNTYPE_MSTR.CRE_BY     = username;
            cOPR16_RETURNTYPE_MSTR.ADATE      = AppPropModel.today;
            cOPR16_RETURNTYPE_MSTR.DESC       = rt_desc;
            cOPR16_RETURNTYPE_MSTR.RTYPE_ID   = rt_id;
            cOPR16_RETURNTYPE_MSTR.RTYPE_NAME = rt_name;
            cOPR16_RETURNTYPE_MSTR.FLGACT     = flgact.ToLower() == "true" ? true:false;
            foreach (ReturnDetial item in jsonString)
            {
                COPR16_RTDT_MSTR dtdt = new COPR16_RTDT_MSTR();
                dtdt.RTTYPE_ID = rt_id;
                dtdt.RTDT_ID   = item.RTDT_ID;
                dtdt.RTDT_NAME = item.RTDT_NAME;
                dtdt.MSTYPE_ID = item.MSTYPE_ID;
                dtdt.REF_ID    = item.REF_ID;
                dtdt.CRE_BY    = username;
                dtdt.FLGACT    = true;
                dtdt.ADATE     = AppPropModel.today;
                db.COPR16_RTDT_MSTR.Add(dtdt);
                await db.SaveChangesAsync();
            }
            db.COPR16_RETURNTYPE_MSTR.Add(cOPR16_RETURNTYPE_MSTR);
            await db.SaveChangesAsync();

            return(View());
        }
        public async Task <ActionResult> SaveJson(
            string rt_id,
            string rt_name,
            string rt_desc,
            string flgact,

            string username,
            List <ReturnDetial> jsonString)
        {
            COPR16_RETURNTYPE_MSTR cOPR16_RETURNTYPE_MSTR = await db.COPR16_RETURNTYPE_MSTR.FindAsync(rt_id);

            cOPR16_RETURNTYPE_MSTR.MOD_BY     = username;
            cOPR16_RETURNTYPE_MSTR.MOD_DATE   = AppPropModel.today;
            cOPR16_RETURNTYPE_MSTR.DESC       = rt_desc;
            cOPR16_RETURNTYPE_MSTR.RTYPE_ID   = rt_id;
            cOPR16_RETURNTYPE_MSTR.RTYPE_NAME = rt_name;
            cOPR16_RETURNTYPE_MSTR.FLGACT     = flgact.ToLower() == "true" ? true : false;
            foreach (ReturnDetial item in jsonString)
            {
                bool addNew = false;
                //COPR16_RTDT_MSTR dtdt = new COPR16_RTDT_MSTR();
                COPR16_RTDT_MSTR dtdt = db.COPR16_RTDT_MSTR.Where(
                    row => row.RTTYPE_ID.Equals(rt_id) &&
                    row.RTDT_ID.Equals(item.RTDT_ID) &&
                    row.FLGACT.Value == true).FirstOrDefault();
                if (dtdt == null)
                {
                    dtdt   = new COPR16_RTDT_MSTR();
                    addNew = true;
                }
                else
                {
                    addNew = false;
                }

                dtdt.RTTYPE_ID = rt_id;
                dtdt.RTDT_NAME = item.RTDT_NAME;
                dtdt.REF_ID    = item.REF_ID;
                dtdt.MSTYPE_ID = item.MSTYPE_ID;
                dtdt.FLGACT    = true;
                if (addNew)
                {
                    dtdt.RTDT_ID = item.RTDT_ID;
                    dtdt.CRE_BY  = username;
                    dtdt.ADATE   = AppPropModel.today;
                    db.COPR16_RTDT_MSTR.Add(dtdt);
                    try
                    {
                        await db.SaveChangesAsync();
                    }catch (Exception e)
                    {
                        cOPR16_RETURNTYPE_MSTR.DESC = "Error : " + e.Message + "<br> RTDT_ID: " + dtdt.RTDT_ID + ", RTTYPE_ID:" + rt_id;
                        return(View(cOPR16_RETURNTYPE_MSTR));
                    }
                }
                else
                {
                    dtdt.MOD_BY          = username;
                    dtdt.MOD_DATE        = AppPropModel.today;
                    db.Entry(dtdt).State = EntityState.Modified;
                    await db.SaveChangesAsync();
                }
            }
            //db.COPR16_RETURNTYPE_MSTR.Add(cOPR16_RETURNTYPE_MSTR);
            db.Entry(cOPR16_RETURNTYPE_MSTR).State = EntityState.Modified;
            await db.SaveChangesAsync();

            return(View(cOPR16_RETURNTYPE_MSTR));
        }