diff --git a/src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java b/src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java index 5fe01e8..b7514e0 100644 --- a/src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java +++ b/src/main/java/com/huaheng/pc/config/materialMultiple/controller/MaterialMultipleController.java @@ -15,7 +15,7 @@ import com.huaheng.framework.web.page.PageDomain; import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.config.materialMultiple.domain.MaterialMultiple; -import com.huaheng.pc.config.materialMultiple.service.MaterialMultipleService; +import com.huaheng.pc.config.materialMultiple.service.MaterialMultipleServiceImpl; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -32,7 +32,7 @@ import java.util.List; public class MaterialMultipleController extends BaseController { @Resource - private MaterialMultipleService materialMultipleService; + private MaterialMultipleServiceImpl materialMultipleService; private String prefix = "config/materialMultiple"; diff --git a/src/main/java/com/huaheng/pc/config/materialMultiple/domain/MaterialMultiple.java b/src/main/java/com/huaheng/pc/config/materialMultiple/domain/MaterialMultiple.java index 7abba4f..ae4761c 100644 --- a/src/main/java/com/huaheng/pc/config/materialMultiple/domain/MaterialMultiple.java +++ b/src/main/java/com/huaheng/pc/config/materialMultiple/domain/MaterialMultiple.java @@ -75,7 +75,7 @@ public class MaterialMultiple implements Serializable { */ @TableField(value = "multiple") @ApiModelProperty(value="单位1转单位2换算倍数") - private Integer multiple; + private Double multiple; /** * 状态 diff --git a/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleService.java b/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleService.java deleted file mode 100644 index 06df0ca..0000000 --- a/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleService.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.huaheng.pc.config.materialMultiple.service; - -import com.huaheng.pc.config.materialMultiple.domain.MaterialMultiple; -import com.baomidou.mybatisplus.extension.service.IService; -public interface MaterialMultipleService extends IService<MaterialMultiple>{ - - -} diff --git a/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleServiceImpl.java b/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleServiceImpl.java index 4b27cee..d79d549 100644 --- a/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleServiceImpl.java +++ b/src/main/java/com/huaheng/pc/config/materialMultiple/service/MaterialMultipleServiceImpl.java @@ -1,13 +1,50 @@ package com.huaheng.pc.config.materialMultiple.service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.IService; +import com.huaheng.common.utils.security.ShiroUtils; +import com.huaheng.framework.shiro.realm.UserRealm; +import com.huaheng.pc.general.warehouse.domain.Warehouse; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; -import javax.annotation.Resource; -import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.huaheng.pc.config.materialMultiple.mapper.MaterialMultipleMapper; import com.huaheng.pc.config.materialMultiple.domain.MaterialMultiple; -import com.huaheng.pc.config.materialMultiple.service.MaterialMultipleService; + +import java.math.BigDecimal; + @Service -public class MaterialMultipleServiceImpl extends ServiceImpl<MaterialMultipleMapper, MaterialMultiple> implements MaterialMultipleService{ +public class MaterialMultipleServiceImpl extends ServiceImpl<MaterialMultipleMapper, MaterialMultiple> implements IService<MaterialMultiple> { + + private static final Logger log = LoggerFactory.getLogger(MaterialMultipleServiceImpl.class); + + /** + * 单位转换 + * @param materialCode 物料编码 + * @param unit1 单位1 + * @param unit2 单位2 + * @param value 转换值 + * @return 转换后的值,异常返回"" + */ + public String multiple(String materialCode, String unit1, String unit2, String value){ + LambdaQueryWrapper<MaterialMultiple> lambda = Wrappers.lambdaQuery(); + lambda.select(MaterialMultiple::getMultiple) + .eq(MaterialMultiple::getMaterialCode, materialCode) + .eq(MaterialMultiple::getUnitId1, unit1) + .eq(MaterialMultiple::getUnitId2, unit2) + .eq(MaterialMultiple::getEnable, 1) + .eq(MaterialMultiple::getWarehouseCode, ShiroUtils.getWarehouseCode()); + try { + Double multiple = this.getOne(lambda).getMultiple(); + return String.valueOf(Double.parseDouble(value)*multiple); + } catch (NullPointerException e){ + log.info("查询不到物料编码:"+materialCode+",单位:"+unit1+", "+unit2+"的转换系数"); + } catch (Exception e){ + log.info("查询不到物料编码:"+materialCode+",单位:"+unit1+", "+unit2+"的转换系数出错"); + } + return ""; + } } diff --git a/src/main/resources/mybatis/config/MaterialMultipleMapper.xml b/src/main/resources/mybatis/config/MaterialMultipleMapper.xml index 116e111..c9ba100 100644 --- a/src/main/resources/mybatis/config/MaterialMultipleMapper.xml +++ b/src/main/resources/mybatis/config/MaterialMultipleMapper.xml @@ -11,7 +11,7 @@ <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" /> <result column="unitId1" jdbcType="VARCHAR" property="unitId1" /> <result column="unitId2" jdbcType="VARCHAR" property="unitId2" /> - <result column="multiple" jdbcType="INTEGER" property="multiple" /> + <result column="multiple" jdbcType="DOUBLE" property="multiple" /> <result column="enable" jdbcType="INTEGER" property="enable" /> <result column="created" jdbcType="TIMESTAMP" property="created" /> <result column="createdBy" jdbcType="VARCHAR" property="createdBy" />