优化销售统计接口
This commit is contained in:
@@ -478,23 +478,24 @@ public class DepotItemController {
|
|||||||
endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME);
|
endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME);
|
||||||
try {
|
try {
|
||||||
String [] creatorArray = depotHeadService.getCreatorArray(roleType);
|
String [] creatorArray = depotHeadService.getCreatorArray(roleType);
|
||||||
|
String [] organArray = null;
|
||||||
List<Long> depotList = depotService.parseDepotList(null);
|
List<Long> depotList = depotService.parseDepotList(null);
|
||||||
Boolean amountApprovalFlag = systemConfigService.getAmountApprovalFlag();
|
Boolean amountApprovalFlag = systemConfigService.getAmountApprovalFlag();
|
||||||
List<DepotItemVo4WithInfoEx> dataList = depotItemService.getListWithBugOrSale(StringUtil.toNull(materialParam),
|
List<DepotItemVo4WithInfoEx> dataList = depotItemService.getListWithBugOrSale(StringUtil.toNull(materialParam),
|
||||||
"buy", beginTime, endTime, creatorArray, depotList, amountApprovalFlag, (currentPage-1)*pageSize, pageSize);
|
"buy", beginTime, endTime, creatorArray, organArray, depotList, amountApprovalFlag, (currentPage-1)*pageSize, pageSize);
|
||||||
String[] mpArr = mpList.split(",");
|
String[] mpArr = mpList.split(",");
|
||||||
int total = depotItemService.getListWithBugOrSaleCount(StringUtil.toNull(materialParam),
|
int total = depotItemService.getListWithBugOrSaleCount(StringUtil.toNull(materialParam),
|
||||||
"buy", beginTime, endTime, creatorArray, depotList, amountApprovalFlag);
|
"buy", beginTime, endTime, creatorArray, organArray, depotList, amountApprovalFlag);
|
||||||
map.put("total", total);
|
map.put("total", total);
|
||||||
//存放数据json数组
|
//存放数据json数组
|
||||||
JSONArray dataArray = new JSONArray();
|
JSONArray dataArray = new JSONArray();
|
||||||
if (null != dataList) {
|
if (null != dataList) {
|
||||||
for (DepotItemVo4WithInfoEx diEx : dataList) {
|
for (DepotItemVo4WithInfoEx diEx : dataList) {
|
||||||
JSONObject item = new JSONObject();
|
JSONObject item = new JSONObject();
|
||||||
BigDecimal InSum = depotItemService.buyOrSale("入库", "采购", diEx.getMId(), beginTime, endTime, creatorArray, depotList, "number");
|
BigDecimal InSum = depotItemService.buyOrSale("入库", "采购", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList, "number");
|
||||||
BigDecimal OutSum = depotItemService.buyOrSale("出库", "采购退货", diEx.getMId(), beginTime, endTime, creatorArray, depotList, "number");
|
BigDecimal OutSum = depotItemService.buyOrSale("出库", "采购退货", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList, "number");
|
||||||
BigDecimal InSumPrice = depotItemService.buyOrSale("入库", "采购", diEx.getMId(), beginTime, endTime, creatorArray, depotList, "price");
|
BigDecimal InSumPrice = depotItemService.buyOrSale("入库", "采购", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList, "price");
|
||||||
BigDecimal OutSumPrice = depotItemService.buyOrSale("出库", "采购退货", diEx.getMId(), beginTime, endTime, creatorArray, depotList, "price");
|
BigDecimal OutSumPrice = depotItemService.buyOrSale("出库", "采购退货", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList, "price");
|
||||||
BigDecimal InOutSumPrice = InSumPrice.subtract(OutSumPrice);
|
BigDecimal InOutSumPrice = InSumPrice.subtract(OutSumPrice);
|
||||||
item.put("barCode", diEx.getBarCode());
|
item.put("barCode", diEx.getBarCode());
|
||||||
item.put("materialName", diEx.getMName());
|
item.put("materialName", diEx.getMName());
|
||||||
@@ -552,27 +553,28 @@ public class DepotItemController {
|
|||||||
endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME);
|
endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME);
|
||||||
try {
|
try {
|
||||||
String [] creatorArray = depotHeadService.getCreatorArray(roleType);
|
String [] creatorArray = depotHeadService.getCreatorArray(roleType);
|
||||||
|
String [] organArray = depotHeadService.getOrganArray("销售", "");
|
||||||
List<Long> depotList = depotService.parseDepotList(null);
|
List<Long> depotList = depotService.parseDepotList(null);
|
||||||
Boolean amountApprovalFlag = systemConfigService.getAmountApprovalFlag();
|
Boolean amountApprovalFlag = systemConfigService.getAmountApprovalFlag();
|
||||||
List<DepotItemVo4WithInfoEx> dataList = depotItemService.getListWithBugOrSale(StringUtil.toNull(materialParam),
|
List<DepotItemVo4WithInfoEx> dataList = depotItemService.getListWithBugOrSale(StringUtil.toNull(materialParam),
|
||||||
"sale", beginTime, endTime, creatorArray, depotList, amountApprovalFlag, (currentPage-1)*pageSize, pageSize);
|
"sale", beginTime, endTime, creatorArray, organArray, depotList, amountApprovalFlag, (currentPage-1)*pageSize, pageSize);
|
||||||
String[] mpArr = mpList.split(",");
|
String[] mpArr = mpList.split(",");
|
||||||
int total = depotItemService.getListWithBugOrSaleCount(StringUtil.toNull(materialParam),
|
int total = depotItemService.getListWithBugOrSaleCount(StringUtil.toNull(materialParam),
|
||||||
"sale", beginTime, endTime, creatorArray, depotList, amountApprovalFlag);
|
"sale", beginTime, endTime, creatorArray, organArray, depotList, amountApprovalFlag);
|
||||||
map.put("total", total);
|
map.put("total", total);
|
||||||
//存放数据json数组
|
//存放数据json数组
|
||||||
JSONArray dataArray = new JSONArray();
|
JSONArray dataArray = new JSONArray();
|
||||||
if (null != dataList) {
|
if (null != dataList) {
|
||||||
for (DepotItemVo4WithInfoEx diEx : dataList) {
|
for (DepotItemVo4WithInfoEx diEx : dataList) {
|
||||||
JSONObject item = new JSONObject();
|
JSONObject item = new JSONObject();
|
||||||
BigDecimal OutSumRetail = depotItemService.buyOrSale("出库", "零售", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"number");
|
BigDecimal OutSumRetail = depotItemService.buyOrSale("出库", "零售", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"number");
|
||||||
BigDecimal OutSum = depotItemService.buyOrSale("出库", "销售", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"number");
|
BigDecimal OutSum = depotItemService.buyOrSale("出库", "销售", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"number");
|
||||||
BigDecimal InSumRetail = depotItemService.buyOrSale("入库", "零售退货", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"number");
|
BigDecimal InSumRetail = depotItemService.buyOrSale("入库", "零售退货", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"number");
|
||||||
BigDecimal InSum = depotItemService.buyOrSale("入库", "销售退货", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"number");
|
BigDecimal InSum = depotItemService.buyOrSale("入库", "销售退货", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"number");
|
||||||
BigDecimal OutSumRetailPrice = depotItemService.buyOrSale("出库", "零售", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"price");
|
BigDecimal OutSumRetailPrice = depotItemService.buyOrSale("出库", "零售", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"price");
|
||||||
BigDecimal OutSumPrice = depotItemService.buyOrSale("出库", "销售", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"price");
|
BigDecimal OutSumPrice = depotItemService.buyOrSale("出库", "销售", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"price");
|
||||||
BigDecimal InSumRetailPrice = depotItemService.buyOrSale("入库", "零售退货", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"price");
|
BigDecimal InSumRetailPrice = depotItemService.buyOrSale("入库", "零售退货", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"price");
|
||||||
BigDecimal InSumPrice = depotItemService.buyOrSale("入库", "销售退货", diEx.getMId(), beginTime, endTime, creatorArray, depotList,"price");
|
BigDecimal InSumPrice = depotItemService.buyOrSale("入库", "销售退货", diEx.getMId(), beginTime, endTime, creatorArray, organArray, depotList,"price");
|
||||||
BigDecimal OutInSumPrice = (OutSumRetailPrice.add(OutSumPrice)).subtract(InSumRetailPrice.add(InSumPrice));
|
BigDecimal OutInSumPrice = (OutSumRetailPrice.add(OutSumPrice)).subtract(InSumRetailPrice.add(InSumPrice));
|
||||||
item.put("barCode", diEx.getBarCode());
|
item.put("barCode", diEx.getBarCode());
|
||||||
item.put("materialName", diEx.getMName());
|
item.put("materialName", diEx.getMName());
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ public interface DepotItemMapperEx {
|
|||||||
@Param("beginTime") String beginTime,
|
@Param("beginTime") String beginTime,
|
||||||
@Param("endTime") String endTime,
|
@Param("endTime") String endTime,
|
||||||
@Param("creatorArray") String[] creatorArray,
|
@Param("creatorArray") String[] creatorArray,
|
||||||
|
@Param("organArray") String [] organArray,
|
||||||
@Param("depotList") List<Long> depotList,
|
@Param("depotList") List<Long> depotList,
|
||||||
@Param("amountApprovalFlag") Boolean amountApprovalFlag,
|
@Param("amountApprovalFlag") Boolean amountApprovalFlag,
|
||||||
@Param("offset") Integer offset,
|
@Param("offset") Integer offset,
|
||||||
@@ -79,6 +80,7 @@ public interface DepotItemMapperEx {
|
|||||||
@Param("beginTime") String beginTime,
|
@Param("beginTime") String beginTime,
|
||||||
@Param("endTime") String endTime,
|
@Param("endTime") String endTime,
|
||||||
@Param("creatorArray") String[] creatorArray,
|
@Param("creatorArray") String[] creatorArray,
|
||||||
|
@Param("organArray") String [] organArray,
|
||||||
@Param("depotList") List<Long> depotList,
|
@Param("depotList") List<Long> depotList,
|
||||||
@Param("amountApprovalFlag") Boolean amountApprovalFlag);
|
@Param("amountApprovalFlag") Boolean amountApprovalFlag);
|
||||||
|
|
||||||
@@ -89,6 +91,7 @@ public interface DepotItemMapperEx {
|
|||||||
@Param("beginTime") String beginTime,
|
@Param("beginTime") String beginTime,
|
||||||
@Param("endTime") String endTime,
|
@Param("endTime") String endTime,
|
||||||
@Param("creatorArray") String[] creatorArray,
|
@Param("creatorArray") String[] creatorArray,
|
||||||
|
@Param("organArray") String [] organArray,
|
||||||
@Param("depotList") List<Long> depotList,
|
@Param("depotList") List<Long> depotList,
|
||||||
@Param("sumType") String sumType);
|
@Param("sumType") String sumType);
|
||||||
|
|
||||||
@@ -99,6 +102,7 @@ public interface DepotItemMapperEx {
|
|||||||
@Param("beginTime") String beginTime,
|
@Param("beginTime") String beginTime,
|
||||||
@Param("endTime") String endTime,
|
@Param("endTime") String endTime,
|
||||||
@Param("creatorArray") String[] creatorArray,
|
@Param("creatorArray") String[] creatorArray,
|
||||||
|
@Param("organArray") String [] organArray,
|
||||||
@Param("depotList") List<Long> depotList,
|
@Param("depotList") List<Long> depotList,
|
||||||
@Param("sumType") String sumType);
|
@Param("sumType") String sumType);
|
||||||
|
|
||||||
|
|||||||
@@ -318,10 +318,10 @@ public class DepotItemService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public List<DepotItemVo4WithInfoEx> getListWithBugOrSale(String materialParam, String billType,
|
public List<DepotItemVo4WithInfoEx> getListWithBugOrSale(String materialParam, String billType,
|
||||||
String beginTime, String endTime, String[] creatorArray, List<Long> depotList, Boolean amountApprovalFlag, Integer offset, Integer rows)throws Exception {
|
String beginTime, String endTime, String[] creatorArray, String [] organArray, List<Long> depotList, Boolean amountApprovalFlag, Integer offset, Integer rows)throws Exception {
|
||||||
List<DepotItemVo4WithInfoEx> list =null;
|
List<DepotItemVo4WithInfoEx> list =null;
|
||||||
try{
|
try{
|
||||||
list = depotItemMapperEx.getListWithBugOrSale(materialParam, billType, beginTime, endTime, creatorArray, depotList, amountApprovalFlag, offset, rows);
|
list = depotItemMapperEx.getListWithBugOrSale(materialParam, billType, beginTime, endTime, creatorArray, organArray, depotList, amountApprovalFlag, offset, rows);
|
||||||
}catch(Exception e){
|
}catch(Exception e){
|
||||||
JshException.readFail(logger, e);
|
JshException.readFail(logger, e);
|
||||||
}
|
}
|
||||||
@@ -329,10 +329,10 @@ public class DepotItemService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int getListWithBugOrSaleCount(String materialParam, String billType,
|
public int getListWithBugOrSaleCount(String materialParam, String billType,
|
||||||
String beginTime, String endTime, String[] creatorArray, List<Long> depotList, Boolean amountApprovalFlag)throws Exception {
|
String beginTime, String endTime, String[] creatorArray, String [] organArray, List<Long> depotList, Boolean amountApprovalFlag)throws Exception {
|
||||||
int result=0;
|
int result=0;
|
||||||
try{
|
try{
|
||||||
result = depotItemMapperEx.getListWithBugOrSaleCount(materialParam, billType, beginTime, endTime, creatorArray, depotList, amountApprovalFlag);
|
result = depotItemMapperEx.getListWithBugOrSaleCount(materialParam, billType, beginTime, endTime, creatorArray, organArray, depotList, amountApprovalFlag);
|
||||||
}catch(Exception e){
|
}catch(Exception e){
|
||||||
JshException.readFail(logger, e);
|
JshException.readFail(logger, e);
|
||||||
}
|
}
|
||||||
@@ -340,13 +340,13 @@ public class DepotItemService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal buyOrSale(String type, String subType, Long MId, String beginTime, String endTime,
|
public BigDecimal buyOrSale(String type, String subType, Long MId, String beginTime, String endTime,
|
||||||
String[] creatorArray, List<Long> depotList, String sumType) throws Exception{
|
String[] creatorArray, String [] organArray, List<Long> depotList, String sumType) throws Exception{
|
||||||
BigDecimal result= BigDecimal.ZERO;
|
BigDecimal result= BigDecimal.ZERO;
|
||||||
try{
|
try{
|
||||||
if (SUM_TYPE.equals(sumType)) {
|
if (SUM_TYPE.equals(sumType)) {
|
||||||
result= depotItemMapperEx.buyOrSaleNumber(type, subType, MId, beginTime, endTime, creatorArray, depotList, sumType);
|
result= depotItemMapperEx.buyOrSaleNumber(type, subType, MId, beginTime, endTime, creatorArray, organArray, depotList, sumType);
|
||||||
} else {
|
} else {
|
||||||
result= depotItemMapperEx.buyOrSalePrice(type, subType, MId, beginTime, endTime, creatorArray, depotList, sumType);
|
result= depotItemMapperEx.buyOrSalePrice(type, subType, MId, beginTime, endTime, creatorArray, organArray, depotList, sumType);
|
||||||
}
|
}
|
||||||
}catch(Exception e){
|
}catch(Exception e){
|
||||||
JshException.readFail(logger, e);
|
JshException.readFail(logger, e);
|
||||||
|
|||||||
@@ -376,6 +376,13 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<if test="organArray != null and organArray !=''">
|
||||||
|
and dh.organ_id in (
|
||||||
|
<foreach collection="organArray" item="organId" separator=",">
|
||||||
|
#{organId}
|
||||||
|
</foreach>
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="depotList.size()>0">
|
<if test="depotList.size()>0">
|
||||||
and di.depot_id in
|
and di.depot_id in
|
||||||
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
||||||
@@ -423,6 +430,13 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<if test="organArray != null and organArray !=''">
|
||||||
|
and dh.organ_id in (
|
||||||
|
<foreach collection="organArray" item="organId" separator=",">
|
||||||
|
#{organId}
|
||||||
|
</foreach>
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="depotList.size()>0">
|
<if test="depotList.size()>0">
|
||||||
and di.depot_id in
|
and di.depot_id in
|
||||||
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
||||||
@@ -450,6 +464,13 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<if test="organArray != null and organArray !=''">
|
||||||
|
and dh.organ_id in (
|
||||||
|
<foreach collection="organArray" item="organId" separator=",">
|
||||||
|
#{organId}
|
||||||
|
</foreach>
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="depotList.size()>0">
|
<if test="depotList.size()>0">
|
||||||
and di.depot_id in
|
and di.depot_id in
|
||||||
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
||||||
@@ -474,6 +495,13 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<if test="organArray != null and organArray !=''">
|
||||||
|
and dh.organ_id in (
|
||||||
|
<foreach collection="organArray" item="organId" separator=",">
|
||||||
|
#{organId}
|
||||||
|
</foreach>
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="depotList.size()>0">
|
<if test="depotList.size()>0">
|
||||||
and di.depot_id in
|
and di.depot_id in
|
||||||
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
<foreach collection="depotList" item="item" index="index" separator="," open="(" close=")">
|
||||||
|
|||||||
Reference in New Issue
Block a user