Commit 9be10625 authored by 季圣华's avatar 季圣华
Browse files

解决零售单据没有赋值采购价的bug

parent 3cb57ada
......@@ -183,4 +183,7 @@ public interface DepotItemMapperEx {
Long getCountByMaterialAndBatchNumber(
@Param("meId") Long meId,
@Param("batchNumber") String batchNumber);
List<DepotItem> getDepotItemByBatchNumber(
@Param("batchNumber") String batchNumber);
}
......@@ -525,9 +525,11 @@ public class DepotItemService {
}
}
}
//如果是销售出库单则给采购单价字段赋值(如果是批次商品,则要根据批号去找之前的采购价)
if(BusinessConstants.DEPOTHEAD_TYPE_OUT.equals(depotHead.getType()) &&
BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType())) {
//如果是销售出库、销售退货、零售出库、零售退货则给采购单价字段赋值(如果是批次商品,则要根据批号去找之前的入库价)
if(BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType()) ||
BusinessConstants.SUB_TYPE_SALES_RETURN.equals(depotHead.getSubType()) ||
BusinessConstants.SUB_TYPE_RETAIL.equals(depotHead.getSubType()) ||
BusinessConstants.SUB_TYPE_RETAIL_RETURN.equals(depotHead.getSubType())) {
depotItem.setPurchaseUnitPrice(materialExtend.getPurchaseDecimal());
if(StringUtil.isNotEmpty(depotItem.getBatchNumber())) {
depotItem.setPurchaseUnitPrice(getDepotItemByBatchNumber(depotItem.getBatchNumber()).getUnitPrice());
......@@ -707,14 +709,12 @@ public class DepotItemService {
* @return
*/
public DepotItem getDepotItemByBatchNumber(String batchNumber) {
DepotItem depotItem = new DepotItem();
DepotItemExample example = new DepotItemExample();
example.createCriteria().andBatchNumberEqualTo(batchNumber).andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED);
List<DepotItem> depotItemList = depotItemMapper.selectByExample(example);
List<DepotItem> depotItemList = depotItemMapperEx.getDepotItemByBatchNumber(batchNumber);
if(null != depotItemList && depotItemList.size() > 0){
depotItem = depotItemList.get(0);
return depotItemList.get(0);
} else {
return new DepotItem();
}
return depotItem;
}
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
......
......@@ -742,4 +742,13 @@
and di.material_extend_id=#{meId}
and di.batch_number=#{batchNumber}
</select>
<select id="getDepotItemByBatchNumber" resultType="com.jsh.erp.datasource.entities.DepotItem">
select di.* from jsh_depot_head dh
left join jsh_depot_item di on dh.id=di.header_id and ifnull(di.delete_flag,'0') !='1'
where 1=1
and ifnull(dh.delete_flag,'0') !='1'
and di.batch_number = #{batchNumber}
and dh.type = '入库'
</select>
</mapper>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment