public JArray Query(JObject form)
        {
            //TODO。。。判空
            //太慢
            //Dictionary<string, string> formdata = form.ToObject<Dictionary<string, string>>();
            //return JArray.FromObject(_tdsAupoRepository.GetMainpo(formdata));


            v_sIFREupoMain queryForm = new v_sIFREupoMain();

            queryForm.BUKRS      = form["BUKRS"].ToString().Trim();
            queryForm.EBELN      = form["EBELN"].ToString().Trim();
            queryForm.matnrE     = form["matnrE"].ToString().Trim();
            queryForm.TXZ01      = form["TXZ01"].ToString().Trim();
            queryForm.DECLITEM   = form["DECLITEM"].ToString().Trim();
            queryForm.STATUS     = form["STATUS"].ToString().Trim();
            queryForm.LIFNR      = form["LIFNR"].ToString().Trim();
            queryForm.vendortype = form["vendortype"].ToString().Trim();
            queryForm.CHNAME     = form["CHNAME"].ToString().Trim();
            queryForm.BRGEW      = form["BRGEW"].ToString().Trim();
            queryForm.CHType     = form["CHType"].ToString().Trim();
            queryForm.MARK       = form["MARK"].ToString().Trim();
            string purchdateFrom = form["purchdateFrom"].ToString().Trim();
            string purchdateTo   = form["purchdateTo"].ToString().Trim();

            var results = JArray.FromObject(_tdsAupoRepository.GetMainpo(queryForm, purchdateFrom, purchdateTo));

            if (results == null)
            {
                return(null);
            }
            else
            {
                var tcurr = string.Empty;
                if (results.First["BUKRS"].ToString().Equals("9000"))
                {
                    results[0]["vendorname"] = _tdsAupoRepository.GetVendorname(results.First["LIFNR"].ToString());
                }
                if (!results.First["WAERS"].ToString().Equals("RMB"))
                {
                    tcurr = _tdsAupoRepository.GetTcurr(results.First["BUKRS"].ToString(), results.First["WAERS"].ToString());
                }

                foreach (var result in results)
                {
                    result["MARK"]  = string.IsNullOrEmpty(result["MARK"].ToString()) ? "0" : result["MARK"];
                    result["TCURR"] = tcurr;
                }
                return(results);
            }
        }
Beispiel #2
0
        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="form"></param>
        /// <param name="purchdateFrom"></param>
        /// <param name="purchdateTo"></param>
        /// <returns></returns>
        public IEnumerable <v_sIFREupoMain> GetMainpo(v_sIFREupoMain form, string purchdateFrom = null, string purchdateTo = null)
        {
            var data   = _context.v_sIFREupoMains;
            var result = form.BUKRS.Equals("Company") ? data : data.Where(x => x.BUKRS == form.BUKRS);

            result = string.IsNullOrEmpty(form.BOITYP) ? result : result.Where(x => x.BOITYP == form.BOITYP);
            result = string.IsNullOrEmpty(form.EBELN) ? result : result.Where(x => x.EBELN == form.EBELN);
            result = string.IsNullOrEmpty(form.matnrE) ? result : result.Where(x => x.matnrE == form.matnrE);
            result = string.IsNullOrEmpty(form.TXZ01) ? result : result.Where(x => x.TXZ01.Contains(form.TXZ01));
            result = string.IsNullOrEmpty(form.DECLITEM) ? result : result.Where(x => x.DECLITEM == form.DECLITEM);
            result = string.IsNullOrEmpty(form.STATUS) ? result : result.Where(x => x.STATUS == form.STATUS);
            result = string.IsNullOrEmpty(form.LIFNR) ? result : result.Where(x => x.LIFNR == form.LIFNR);
            result = string.IsNullOrEmpty(form.vendortype) ? result : result.Where(x => x.vendortype == form.vendortype);
            result = string.IsNullOrEmpty(form.CHNAME) ? result : result.Where(x => x.CHNAME == form.CHNAME);
            result = string.IsNullOrEmpty(form.BRGEW) ? result : result.Where(x => x.BRGEW == form.BRGEW);
            result = string.IsNullOrEmpty(form.CHType) ? result : result.Where(x => x.CHType == form.CHType);
            result = string.IsNullOrEmpty(form.MARK) ? result : result.Where(x => x.MARK == form.MARK);
            result = string.IsNullOrEmpty(purchdateFrom) ? result : result.Where(x => String.Compare(x.purchdate, purchdateFrom) >= 0);
            result = string.IsNullOrEmpty(purchdateTo) ? result : result.Where(x => String.Compare(x.purchdate, purchdateTo) <= 0);
            return(result.OrderBy(x => x.EBELN).ThenBy(x => x.EBELP));
        }