package com.ruoyi.erp.request;

import com.alibaba.fastjson2.JSONObject;

/**
 * 查询商品属性请求
 *
 * 对应接口：POST /api/open/product/pv/list
 * 请求体字段：
 * - item_biz_type（必填）：商品类型
 * - sp_biz_type（必填）：行业类型
 * - channel_cat_id（必填）：渠道类目ID
 * - sub_property_id（选填）：属性值ID（用于二级属性查询）
 */
public class ProductPropertyListQueryRequest extends ERPRequestBase {
	public ProductPropertyListQueryRequest(IERPAccount erpAccount) {
		super("https://open.goofish.pro/api/open/product/pv/list", erpAccount);
	}

	/**
 	 * 设置商品类型（必填）
 	 * @param itemBizType 商品类型
 	 */
	public void setItemBizType(int itemBizType) {
		ensureRequestBodyInitialized();
		this.requestBody.put("item_biz_type", itemBizType);
	}

	/**
 	 * 设置行业类型（必填）
 	 * @param spBizType 行业类型
 	 */
	public void setSpBizType(int spBizType) {
		ensureRequestBodyInitialized();
		this.requestBody.put("sp_biz_type", spBizType);
	}

	/**
 	 * 设置渠道类目ID（必填）
 	 * @param channelCatId 渠道类目ID
 	 */
	public void setChannelCatId(String channelCatId) {
		ensureRequestBodyInitialized();
		this.requestBody.put("channel_cat_id", channelCatId);
	}

	/**
 	 * 设置下级属性ID（选填）
 	 * @param subPropertyId 下级属性ID
 	 */
	public void setSubPropertyId(String subPropertyId) {
		if (subPropertyId == null || subPropertyId.isEmpty()) {
			return;
		}
		ensureRequestBodyInitialized();
		this.requestBody.put("sub_property_id", subPropertyId);
	}

	private void ensureRequestBodyInitialized() {
		if (this.requestBody == null) {
			this.requestBody = new JSONObject();
		}
	}
}


