Helius
2022-05-27 4351e71d782741143a98f86f6648acd16689165f
zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java
New file
@@ -0,0 +1,161 @@
package com.matrix;
import cn.hutool.core.collection.CollectionUtil;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.bean.SysCompany;
import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.common.dao.SysCompanyDao;
import com.matrix.system.constance.Dictionary;
import com.matrix.system.hive.bean.ParameterSettings;
import com.matrix.system.hive.dao.ParameterSettingsDao;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.ArrayList;
import java.util.List;
/**
 * 配置工具
 *
 * @author jiangyouyao
 * @email 512061637@qq.com
 * @date 2019年2月25日
 */
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {ZqErpApplication.class},webEnvironment =SpringBootTest.WebEnvironment.RANDOM_PORT)
public class ParameterSettingsTool {
   @Autowired
   private ParameterSettingsDao parameterSettingsDao;
   @Autowired
   private BusParameterSettingsDao busParameterSettingsDao;
   @Autowired
   private SysCompanyDao sysCompanyDao;
   /*
   给所有公司加上多个配置,如果已经存在则跳过
    */
   @Test
   public void addSettings(){
      List<ParameterSettings> newSettings=new ArrayList<>();
      ParameterSettings newSetting1=new ParameterSettings();
      newSetting1.setCode("APP_BANNER_GL");
      newSetting1.setName("APP管理模块Banner");
      newSetting1.setType(1);
      newSetting1.setCategory("APP设置");
      newSettings.add(newSetting1);
      ParameterSettings newSetting2=new ParameterSettings();
      newSetting2.setCode(AppConstance.WAREHOUSE_MANAGE_STOCK);
      newSetting2.setName("是否管理产品库存");
      newSetting2.setType(1);
      newSetting2.setCategory("仓库设置");
      newSettings.add(newSetting2);
      ParameterSettings newSetting3=new ParameterSettings();
      newSetting3.setCode(AppConstance.WECHARPAY_RECHARGE_NOTIFYURL);
      newSetting3.setName("储值卡充值回调地址");
      newSetting3.setType(1);
      newSetting3.setCategory("微信开发配置");
      newSettings.add(newSetting3);
      ParameterSettings newSetting4=new ParameterSettings();
      newSetting4.setCode(AppConstance.SHOP_MANAGE_JJCPAS_CONSUME);
      newSetting4.setName("家居产品销售是否生成消耗业绩");
      newSetting4.setType(1);
      newSetting4.setCategory("店务配置");
      newSettings.add(newSetting4);
      ParameterSettings newSetting5=new ParameterSettings();
      newSetting5.setCode(AppConstance.WX_ORDER_NOTICE_DINGDING_TOKEN);
      newSetting5.setName("钉钉通知token");
      newSetting5.setType(1);
      newSetting5.setCategory("微商城配置");
      newSettings.add(newSetting5);
      ParameterSettings newSetting6=new ParameterSettings();
      newSetting6.setCode(Dictionary.ZS_CONSUME_ACHIEVE);
      newSetting6.setName("赠送项目是否计算消耗业绩");
      newSetting6.setType(1);
      newSetting6.setCategory("店务配置");
      newSettings.add(newSetting6);
      ParameterSettings newSetting7=new ParameterSettings();
      newSetting7.setCode(AppConstance.SHOP_MANAGE_GIFTISFREE);
      newSetting7.setName("赠送金额购买产品算赠送购买");
      newSetting7.setType(1);
      newSetting7.setCategory("店务配置");
      newSettings.add(newSetting7);
      ParameterSettings newSetting8=new ParameterSettings();
      newSetting8.setCode(AppConstance.SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER);
      newSetting8.setName("门店是否只能取消待付款订单,服务单");
      newSetting8.setType(1);
      newSetting8.setCategory("店务配置");
      newSettings.add(newSetting8);
      ParameterSettings newSetting9=new ParameterSettings();
      newSetting9.setCode(AppConstance.SERVICE_FLOW_TEMPLATE);
      newSetting9.setName("跟进记录模板");
      newSetting9.setType(5);
      newSetting9.setCategory("店务配置");
      newSettings.add(newSetting9);
      ParameterSettings newSetting10=new ParameterSettings();
      newSetting10.setCode(AppConstance.OPEN_SMS_NOTICE);
      newSetting10.setName("是否开启短信提醒");
      newSetting10.setType(1);
      newSetting10.setCategory("店务配置");
      newSettings.add(newSetting10);
      ParameterSettings newSetting11=new ParameterSettings();
      newSetting11.setCode(AppConstance.OPEN_SERVICE_ORDER_AUTO_BATCHING);
      newSetting11.setName("开启服务单自动配料");
      newSetting11.setType(1);
      newSetting11.setCategory("店务配置");
      newSettings.add(newSetting11);
      for (ParameterSettings newSetting : newSettings) {
         List<ParameterSettings> parameterSettings = parameterSettingsDao.selectByModel(newSetting);
         if(CollectionUtil.isEmpty(parameterSettings)){
            parameterSettingsDao.insert(newSetting);
            System.out.println("新增配置"+newSetting.getName());
         }
         addSettingsTOAllCompany(newSetting);
      }
   }
   private void addSettingsTOAllCompany(ParameterSettings newSetting) {
      List<SysCompany> allCompany = sysCompanyDao.selectByModel(null);
      for (SysCompany sysCompany : allCompany) {
         BusParameterSettings checkExist = busParameterSettingsDao.selectCompanyParamByCode(newSetting.getCode(), sysCompany.getComId());
         if(checkExist==null){
            BusParameterSettings busParameterSettings=new BusParameterSettings();
            busParameterSettings.setCompanyId(sysCompany.getComId());
            busParameterSettings.setParamCode(newSetting.getCode());
            busParameterSettings.setParamValue("");
            busParameterSettingsDao.insert(busParameterSettings);
            System.out.println(sysCompany.getComName()+"新增成功");
         }
      }
   }
}