| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- package restcontroller.webmanage.sale.enterprisesaleclass;
- import beans.itemclass.ItemClass;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import common.Controller;
- import common.YosException;
- import common.annotation.API;
- import common.data.Row;
- import common.data.Rows;
- import common.data.SQLFactory;
- import restcontroller.R;
- import java.util.ArrayList;
- @API(title = "合作企业营销类别授权")
- public class EnterpriseSaleClass extends Controller {
- /**
- * 构造函数
- *
- * @param content
- */
- public EnterpriseSaleClass(JSONObject content) throws YosException {
- super(content);
- }
- @API(title = "新增", apiversion = R.ID20220924134302.v1.class,intervaltime = 200)
- public String insert() throws YosException {
- Long sys_enterpriseid = content.getLong("sys_enterpriseid");
- JSONArray itemclassids = content.getJSONArray("itemclassid");
- JSONArray sa_brandids = new JSONArray();
- if (content.containsKey("sa_brandids")) {
- sa_brandids = content.getJSONArray("sa_brandids");
- }
- if (sa_brandids.size() > 0) {
- String sql = " SELECT DISTINCT itemclassid from plm_itemclass WHERE classtype = '营销' and siteid = '" + siteid + "' and sa_brandid in " + sa_brandids;
- sql = sql.replace("[", "(").replace("]", ")");
- itemclassids.addAll(dbConnect.runSqlQuery(sql).toJsonArray("itemclassid"));
- }
- ArrayList<String> sqlList = new ArrayList<>();
- for (Object obj : itemclassids) {
- String id = String.valueOf(obj);
- SQLFactory sqlFactory = new SQLFactory(this, "合作企业营销类别授权");
- sqlFactory.addParameter("siteid", siteid);
- sqlFactory.addParameter("itemclassid", id);
- sqlFactory.addParameter("sys_enterpriseid", sys_enterpriseid);
- sqlFactory.addParameter("sys_enterprise_saleclassid", createTableID("sys_enterprise_saleclass"));
- sqlList.add(sqlFactory.getSQL());
- }
- dbConnect.runSqlUpdate(sqlList);
- return getSucReturnObject().toString();
- }
- @API(title = "删除", apiversion = R.ID20220924134402.v1.class)
- public String delete() throws YosException {
- JSONArray jsonArray = content.getJSONArray("sys_enterprise_saleclassids");
- SQLFactory sqlFactoryquery = new SQLFactory(this, "合作企业营销类别查询");
- sqlFactoryquery.addParameter_in("sys_enterprise_saleclassid", jsonArray.toArray());
- sqlFactoryquery.addParameter("siteid", siteid);
- Rows rows = dbConnect.runSqlQuery(sqlFactoryquery);
- ArrayList<Long> itemclassids = rows.toArrayList("itemclassid", new ArrayList<>());
- ArrayList<Long> needitemclassids= ItemClass.getSubItemClassIds(this, itemclassids);
- needitemclassids.addAll(itemclassids);
- long sys_enterpriseid = rows.get(0).getLong("sys_enterpriseid");
- SQLFactory sqlFactory = new SQLFactory(this, "合作企业营销类别删除");
- sqlFactory.addParameter_in("itemclassid", needitemclassids);
- sqlFactory.addParameter_in("sys_enterpriseid", sys_enterpriseid);
- sqlFactory.addParameter("siteid", siteid);
- dbConnect.runSqlUpdate(sqlFactory);
- String sql = " SELECT ifnull(t1.parentid ,0) parentid from plm_itemclass t1 WHERE t1.itemclassid in " + itemclassids + " and t1.siteid ='"
- + siteid + "'";
- sql = sql.replace("[", "(").replace("]", ")");
- Rows rows1 = dbConnect.runSqlQuery(sql);
- for (Row row:rows1) {
- DeleteItemclass(row.getLong("parentid"),sys_enterpriseid);
- }
- return getSucReturnObject().toString();
- }
- @API(title = "列表", apiversion = R.ID20220924134502.v1.class)
- public String queryList() throws YosException {
- Long sys_enterpriseid = content.getLong("sys_enterpriseid");
- SQLFactory sqlFactory = new SQLFactory(this, "合作企业营销类别列表", pageSize, pageNumber, pageSorting);
- sqlFactory.addParameter("siteid", siteid);
- sqlFactory.addParameter("sys_enterpriseid", sys_enterpriseid);
- String sql = sqlFactory.getSQL();
- Rows rows = dbConnect.runSqlQuery(sql);
- return getSucReturnObject().setData(rows).toString();
- }
- private void DeleteItemclass( long parentid,long sys_enterpriseid)
- throws YosException {
- if (parentid > 0) {
- Rows rows = dbConnect.runSqlQuery(
- "select t1.itemclassid,ifnull(t2.parentid,0) as parentid from sys_enterprise_saleclass t1 inner join plm_itemclass t2 on t1.itemclassid=t2.itemclassid and t1.siteid=t2.siteid where t1.sys_enterpriseid='"+sys_enterpriseid+"' and t1.siteid='"+siteid+"' and t1.itemclassid= '"
- + parentid + "'");
- if (!rows.isEmpty()) {
- if(dbConnect.runSqlQuery(
- "select t1.itemclassid,ifnull(t2.parentid,0) as parentid from sys_enterprise_saleclass t1 inner join plm_itemclass t2 on t1.itemclassid=t2.itemclassid and t1.siteid=t2.siteid where t1.sys_enterpriseid='"+sys_enterpriseid+"' and t1.siteid='"+siteid+"' and t2.parentid= '"
- + rows.get(0).getLong("itemclassid") + "'").isEmpty()){
- dbConnect.runSqlUpdate("delete from sys_enterprise_saleclass where itemclassid= '" + rows.get(0).getLong("itemclassid") + "' and sys_enterpriseid='"+sys_enterpriseid+"' and siteid='"+siteid+"'");
- DeleteItemclass( rows.get(0).getLong("parentid"),sys_enterpriseid);
- }
- }
- }
- }
- }
|