🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets
🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets

🔥NEW🔥Tummy Control Bathing Suits Modest High Waisted Bikini Sets

Price

$57.99 $29.99
Save $28.00

color

Please select a color

size

Please select a size

Quantity

Global Provision of Services
Free Shipping Over $59.99
Sustainable Manufacturing
PayPal & Credit Card Payment

SIZE:

  • Material: 82% Nylon, 18% Spandex. The women high waisted swimsuits are made of quilted fabric, stretchy, skin-friendly and soft. No pilling, no fade, comfortable to touch.
  • Feature: The tummy control swimsuits for women features a modest v neck, removable padding, full lined, as well as a clasp hook on the back of the halter top. The criss cross wrap has good length so there's a lot of flexibility here as far as chest size, lift them up and closer.
  • Unique Design: This high waisted bikini are designed with a self tie halter top, high waist bottom with ruched detail, trendy and figure flattering. The full coverage bikini bottom could be pulled up to cover your belly button, making you keep elegant in this bikini sets in a flattering way.
  • Occasion: The bathing suit for women tummy control is great to pair with skirt, denim shorts and so on. You could wear it for vacation, beach, seaside, water park, swimming pool, honeymoon, spa and sunbath.
class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('appzebu smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }, true); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart-block', SpzSmartBlockComponent);