public ActionResult getHomePrdItem(int prdId) { ReturnMessage rm = new ReturnMessage(); try { string type = User.Claims.FirstOrDefault(p => p.Type == "type").Value; string tenantId = User.Claims.FirstOrDefault(p => p.Type == "tenantId").Value; int memberId = -1; if (!UserType.GUEST.Equals(type)) { memberId = int.Parse(User.Claims.FirstOrDefault(p => p.Type == "jti").Value); } TenantGrade tenantGrade = DataManager.tenantDao.GetTenantGrade(Guid.Parse(tenantId)); string tenantGradeType = "團媽"; if (tenantGrade != null) { tenantGradeType = tenantGrade.tenantGrade; } TenantPrd prd = DataManager.tenantPrdDao.getTenandPrd(prdId); rm.code = MessageCode.SUCCESS; rm.data = CTenantPrdManager.getPrdItem(prd, type, memberId, tenantGradeType); } catch (Exception e) { rm.code = MessageCode.ERROR; rm.data = e.Message; } return(Ok(rm)); }
public ActionResult getHomePrdList() { ReturnMessage rm = new ReturnMessage(); try { string type = User.Claims.FirstOrDefault(p => p.Type == "type").Value; string tenantId = User.Claims.FirstOrDefault(p => p.Type == "tenantId").Value; int memberId = -1; if (!UserType.GUEST.Equals(type)) { memberId = int.Parse(User.Claims.FirstOrDefault(p => p.Type == "jti").Value); } List <TenantPrd> data = DataManager.tenantPrdDao.getHomePrds(Guid.Parse(tenantId), memberId); IEnumerable <Dictionary <string, object> > prds = CTenantPrdManager.getPrdList(data, type, memberId); rm.code = MessageCode.SUCCESS; rm.data = prds; } catch (Exception e) { rm.code = MessageCode.ERROR; rm.data = e.Message; } return(Ok(rm)); }
public ActionResult Put([FromBody] ShopCartRequest value) { ReturnMessage rm = new ReturnMessage(); try { string type = User.Claims.FirstOrDefault(p => p.Type == "type").Value; int memberId = int.Parse(User.Claims.FirstOrDefault(p => p.Type == "jti").Value); string sepc = value.sepc; Guid tenantId = Guid.Parse(User.Claims.FirstOrDefault(p => p.Type == "tenantId").Value); Guid itemId = Guid.NewGuid(); TenantPrd prd = DataManager.tenantPrdDao.getTenandPrd(value.productId); PrdPrice prdPrice = CTenantPrdManager.getPrdPrice(prd, type, memberId); if (!string.IsNullOrEmpty(sepc)) { sepc = (string)JObject.Parse(sepc).GetValue("code"); } ShopCart shopCart = DataManager.shopCartDao.getShopCartPrd(tenantId, memberId, value.productId, sepc); if (shopCart == null) { shopCart = new ShopCart(); shopCart.id = itemId; shopCart.memberId = memberId; shopCart.productId = value.productId; shopCart.createTime = DateTime.Now; shopCart.count = value.count; shopCart.amount = prdPrice.price * value.count; shopCart.type = prdPrice.type; shopCart.tenantId = tenantId; shopCart.prdSepc = value.sepc; shopCart.prdCustPriceId = prdPrice.custPriceGradeId; shopCart.priceGradeType = prdPrice.priceGradeType; DataManager.shopCartDao.addItem(shopCart); } else { itemId = shopCart.id; shopCart.count += value.count; shopCart.amount = prdPrice.price * shopCart.count; DataManager.shopCartDao.updateItem(shopCart); } rm.code = MessageCode.SUCCESS; rm.data = itemId; } catch (Exception e) { rm.code = MessageCode.ERROR; rm.data = e.Message; } return(Ok(rm)); }
public ActionResult getPrdByCatId(long id, [FromQuery] SortTypeRequest request) { ReturnMessage rm = new ReturnMessage(); try { string tenantId = User.Claims.FirstOrDefault(p => p.Type == "tenantId").Value; string type = User.Claims.FirstOrDefault(p => p.Type == "type").Value; int memberId = -1; if (!UserType.GUEST.Equals(type)) { memberId = int.Parse(User.Claims.FirstOrDefault(p => p.Type == "jti").Value); } PrdPageQuery query = new PrdPageQuery(request); query.tnenatId = Guid.Parse(tenantId); query.catId = id; query.userType = type; int totalCount = CTenantPrdManager.getTenantPrdCount(Guid.Parse(tenantId), id, memberId); int maxPage = totalCount % request.count == 0 ? totalCount / request.count : totalCount / request.count + 1; maxPage = totalCount <= request.count ? 1 : maxPage; PrdPageResponse response = new PrdPageResponse(); response.page = request.page; response.maxPage = maxPage; response.result = CTenantPrdManager.getPrdListByCat(query, memberId); rm.code = MessageCode.SUCCESS; rm.data = response; } catch (Exception e) { rm.code = MessageCode.ERROR; rm.data = e.Message; } return(Ok(rm)); }