import com.sdtool.business.dao.MallDao import com.sdtool.common.api.BusinessExecutor import com.sdtool.common.datas.ERPModule import com.sdtool.common.entity.base.InvokeCallParams import com.sdtool.common.entity.base.InvokeCallResult import com.sdtool.common.entity.mall.MallUserAddress import com.sdtool.common.entity.site.ERPTokenUser import com.dySweetFishPlugin.sql.DBService import com.dySweetFishPlugin.sql.TableIdService import com.dySweetFishPlugin.sql.dao.OperatorWait import com.dySweetFishPlugin.sql.dao.TunaService import com.sweetfish.convert.json.JsonConvert import com.sweetfish.service.RetResult import org.apache.commons.lang3.StringUtils import javax.annotation.Resource /** * @Author: xl Created on 2024-03-27 * @Content: */ class BE_MallUserAddress_Add implements BusinessExecutor { @Resource TunaService tunaService @Resource JsonConvert jsonConvert @Resource TableIdService tableIdService @Resource DBService dbService private MallDao mallDao @Override String scriptName() { return "购物商城-用户地址增加" } @Override ERPModule module() { return ERPModule.MALL_FRONT } @Override String getPerms(ERPTokenUser currentUser) { return "" } @Override OperatorWait getAWait(InvokeCallParams s) { return OperatorWait.ASNYC } @Override boolean needLogin(InvokeCallParams source) { return true } @Override void start(long supplierCode) { mallDao = tunaService.generate(MallDao.class) } @Override RetResult checkExecute(InvokeCallParams source) { MallUserAddress mallUserAddress = jsonConvert.convertFromO(MallUserAddress.class, source.params) if (StringUtils.isBlank(mallUserAddress.receiveMan)) return RetResult. errorT().retinfo("收货人不能为空") if (StringUtils.isBlank(mallUserAddress.receivePhone)) return RetResult. errorT().retinfo("联系电话不能为空") if (StringUtils.isBlank(mallUserAddress.province)) return RetResult. errorT().retinfo("省份不能为空") if (StringUtils.isBlank(mallUserAddress.city)) return RetResult. errorT().retinfo("市不能为空") if (StringUtils.isBlank(mallUserAddress.area)) return RetResult. errorT().retinfo("区不能为空") if (StringUtils.isBlank(mallUserAddress.address)) return RetResult. errorT().retinfo("发货地址不能为空") return RetResult. successT().result(source) } @Override RetResult execute(InvokeCallParams source) { String dataSourceId = source.dataSourceId long supplierCode = source.supplierCode ERPTokenUser currentUser = source.currentUser MallUserAddress mallUserAddress = jsonConvert.convertFrom(MallUserAddress.class, source.params) mallUserAddress.id = tableIdService.getTableIdMulti("maMallUserAddress.id", 1, dataSourceId, String.valueOf(supplierCode)) mallUserAddress.userId = currentUser.id MallUserAddress.create(mallUserAddress,currentUser.id) int iCount = dbService.getMap(dataSourceId, "select count(id) as iCount from maMallUserAddress" + supplierCode + " where userId = " + currentUser.id) .getInt("iCount".toLowerCase()) mallUserAddress.defaultFlag = iCount == 0 ? 1 : 0 int iData = mallDao.addMallUserAddress(mallUserAddress,dataSourceId,supplierCode) if (iData > 0) { return RetResult. successT().result(InvokeCallResult .success() .data(jsonConvert.convertTo(mallUserAddress)) .page(null) .collection(null) ) } else RetResult. errorT().retinfo("新增用户发货地址失败") } }