!53 添加仓库默认及商品明细时默认显示仓库,会员、客户快捷添加方式
Merge pull request !53 from 天门溪水/master
This commit is contained in:
@@ -86,7 +86,7 @@ public class BusinessConstants {
|
||||
/**
|
||||
* create by: qiankunpingtai
|
||||
* create time: 2019/3/14 11:41
|
||||
* description:
|
||||
* description:
|
||||
* 为了使用户可以自己建初始目录,设定根目录的父级目录id为-1
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -207,5 +207,16 @@ public class DepotController {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@PostMapping(value = "/updateDepotIsDefault")
|
||||
public String updateDepotIsDefault(@RequestParam("isDefault") Boolean isDefault,
|
||||
@RequestParam("depotID") Long depotID,
|
||||
HttpServletRequest request) throws Exception{
|
||||
Map<String, Object> objectMap = new HashMap<String, Object>();
|
||||
int res = depotService.updateDepotIsDefault(isDefault, depotID);
|
||||
if(res > 0) {
|
||||
return returnJson(objectMap, ErpInfo.OK.name, ErpInfo.OK.code);
|
||||
} else {
|
||||
return returnJson(objectMap, ErpInfo.ERROR.name, ErpInfo.ERROR.code);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.jsh.erp.constants.BusinessConstants;
|
||||
import com.jsh.erp.constants.ExceptionConstants;
|
||||
import com.jsh.erp.datasource.entities.*;
|
||||
import com.jsh.erp.datasource.vo.DepotItemStockWarningCount;
|
||||
import com.jsh.erp.exception.BusinessRunTimeException;
|
||||
import com.jsh.erp.service.depotItem.DepotItemService;
|
||||
import com.jsh.erp.service.material.MaterialService;
|
||||
@@ -448,7 +449,7 @@ public class DepotItemController {
|
||||
BigDecimal InPrice = sumPrice("入库", pid, diEx.getMId(), monthTime, false);
|
||||
BigDecimal OutPrice = sumPrice("出库", pid, diEx.getMId(), monthTime, false);
|
||||
item.put("MaterialName", diEx.getMName());
|
||||
item.put("MaterialModel", diEx.getMColor());
|
||||
item.put("MaterialModel", diEx.getMModel());
|
||||
//扩展信息
|
||||
String materialOther = getOtherInfo(mpArr, diEx);
|
||||
item.put("MaterialOther", materialOther);
|
||||
@@ -827,4 +828,81 @@ public class DepotItemController {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 库存预警报表
|
||||
* @param currentPage
|
||||
* @param pageSize
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/findStockWarningCount")
|
||||
public BaseResponseInfo findStockWarningCount(@RequestParam("currentPage") Integer currentPage,
|
||||
@RequestParam("pageSize") Integer pageSize, @RequestParam("projectId") Integer pid )throws Exception {
|
||||
BaseResponseInfo res = new BaseResponseInfo();
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
try {
|
||||
List<DepotItemStockWarningCount> resList = new ArrayList<DepotItemStockWarningCount>();
|
||||
List<DepotItemStockWarningCount> list = depotItemService.findStockWarningCount((currentPage-1)*pageSize, pageSize,pid);
|
||||
int total = depotItemService.findStockWarningCountTotal(pid);
|
||||
map.put("total", total);
|
||||
map.put("rows", list);
|
||||
res.code = 200;
|
||||
res.data = map;
|
||||
} catch(Exception e){
|
||||
e.printStackTrace();
|
||||
res.code = 500;
|
||||
res.data = "获取数据失败";
|
||||
}
|
||||
return res;
|
||||
}
|
||||
/**
|
||||
* 导出库存预警excel表格
|
||||
* @param currentPage
|
||||
* @param pageSize
|
||||
* @param projectId
|
||||
* @param monthTime
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/exportWarningExcel")
|
||||
public BaseResponseInfo exportWarningExcel(@RequestParam("currentPage") Integer currentPage,
|
||||
@RequestParam("pageSize") Integer pageSize,
|
||||
@RequestParam("projectId") Integer projectId,
|
||||
HttpServletRequest request, HttpServletResponse response)throws Exception {
|
||||
BaseResponseInfo res = new BaseResponseInfo();
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
String message = "成功";
|
||||
try {
|
||||
List<DepotItemStockWarningCount> dataList = depotItemService.findStockWarningCount((currentPage - 1) * pageSize, pageSize, projectId);
|
||||
//存放数据json数组
|
||||
Integer pid = projectId;
|
||||
String[] names = {"名称", "型号", "扩展信息", "单位", "入库数量", "出库数量", "库存数量", "安全库存量", "临界库存量"};
|
||||
String title = "库存预警报表";
|
||||
List<String[]> objects = new ArrayList<String[]>();
|
||||
if (null != dataList) {
|
||||
for (DepotItemStockWarningCount diEx : dataList) {
|
||||
String[] objs = new String[9];
|
||||
|
||||
objs[0] = diEx.getMaterialName().toString();
|
||||
objs[1] = diEx.getMaterialModel().toString();
|
||||
objs[2] = diEx.getMaterialOther().toString();
|
||||
objs[3] = diEx.getMaterialUnit().toString();
|
||||
objs[4] = diEx.getBasicInNumber().toString();
|
||||
objs[5] = diEx.getBasicOutNumber() == null ? "0" : diEx.getBasicOutNumber().toString();
|
||||
objs[6] = diEx.getBasicNumber() == null ? "0" : diEx.getBasicNumber().toString();
|
||||
objs[7] = diEx.getSafetystock() == null ? "0" : diEx.getSafetystock().toString();
|
||||
objs[8] = diEx.getBasicLinjieNumber() == null ? "0" : diEx.getBasicLinjieNumber().toString();
|
||||
objects.add(objs);
|
||||
}
|
||||
}
|
||||
File file = ExcelUtils.exportObjectsWithoutTitle(title+pid, names, title, objects);
|
||||
ExportExecUtil.showExec(file, file.getName(), response);
|
||||
res.code = 200;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
message = "导出失败";
|
||||
res.code = 500;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,6 +90,15 @@ public class Depot {
|
||||
* @mbggenerated
|
||||
*/
|
||||
private String deleteFlag;
|
||||
private Boolean isdefault;
|
||||
|
||||
public Boolean getIsdefault() {
|
||||
return isdefault;
|
||||
}
|
||||
|
||||
public void setIsdefault(Boolean isdefault) {
|
||||
this.isdefault = isdefault;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method was generated by MyBatis Generator.
|
||||
@@ -354,4 +363,4 @@ public class Depot {
|
||||
public void setDeleteFlag(String deleteFlag) {
|
||||
this.deleteFlag = deleteFlag == null ? null : deleteFlag.trim();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -235,6 +235,7 @@ public class DepotExample {
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
|
||||
public Criteria andIdIn(List<Long> values) {
|
||||
addCriterion("id in", values, "id");
|
||||
return (Criteria) this;
|
||||
@@ -664,7 +665,65 @@ public class DepotExample {
|
||||
addCriterion("remark <>", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
public Criteria andIsdefaultIsNull() {
|
||||
addCriterion("IsDefault is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultIsNotNull() {
|
||||
addCriterion("IsDefault is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultEqualTo(Boolean value) {
|
||||
addCriterion("IsDefault =", value, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultNotEqualTo(Boolean value) {
|
||||
addCriterion("IsDefault <>", value, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultGreaterThan(Boolean value) {
|
||||
addCriterion("IsDefault >", value, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultGreaterThanOrEqualTo(Boolean value) {
|
||||
addCriterion("IsDefault >=", value, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultLessThan(Boolean value) {
|
||||
addCriterion("IsDefault <", value, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultLessThanOrEqualTo(Boolean value) {
|
||||
addCriterion("IsDefault <=", value, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultIn(List<Boolean> values) {
|
||||
addCriterion("IsDefault in", values, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultNotIn(List<Boolean> values) {
|
||||
addCriterion("IsDefault not in", values, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultBetween(Boolean value1, Boolean value2) {
|
||||
addCriterion("IsDefault between", value1, value2, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIsdefaultNotBetween(Boolean value1, Boolean value2) {
|
||||
addCriterion("IsDefault not between", value1, value2, "isdefault");
|
||||
return (Criteria) this;
|
||||
}
|
||||
public Criteria andRemarkGreaterThan(String value) {
|
||||
addCriterion("remark >", value, "remark");
|
||||
return (Criteria) this;
|
||||
@@ -1010,4 +1069,4 @@ public class DepotExample {
|
||||
this(condition, value, secondValue, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.jsh.erp.datasource.mappers;
|
||||
|
||||
import com.jsh.erp.datasource.entities.*;
|
||||
import com.jsh.erp.datasource.vo.DepotItemStockWarningCount;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
@@ -172,4 +173,10 @@ public interface DepotItemMapperEx {
|
||||
List<DepotItem> getDepotItemListListByDepotIds(@Param("depotIds") String[] depotIds);
|
||||
|
||||
List<DepotItem> getDepotItemListListByMaterialIds(@Param("materialIds") String[] materialIds);
|
||||
|
||||
|
||||
List<DepotItemStockWarningCount> findStockWarningCount(@Param("offset") Integer offset,
|
||||
@Param("rows") Integer rows, @Param("pid") Integer pid);
|
||||
|
||||
int findStockWarningCountTotal( @Param("pid") Integer pid);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
package com.jsh.erp.datasource.vo;
|
||||
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
public class DepotItemStockWarningCount {
|
||||
|
||||
|
||||
private String MaterialName;
|
||||
|
||||
private String MaterialModel;
|
||||
|
||||
private String categoryName;
|
||||
|
||||
private String MaterialOther;
|
||||
|
||||
private String MaterialUnit;
|
||||
|
||||
private BigDecimal safetystock;//安全库存量
|
||||
|
||||
private BigDecimal BasicInNumber;//入库量
|
||||
|
||||
private BigDecimal BasicOutNumber;//出库量
|
||||
|
||||
|
||||
private BigDecimal BasicNumber;//库存
|
||||
|
||||
private BigDecimal BasicLinjieNumber;//临界库存
|
||||
|
||||
public String getMaterialName() {
|
||||
return MaterialName;
|
||||
}
|
||||
|
||||
public void setMaterialName(String materialName) {
|
||||
MaterialName = materialName;
|
||||
}
|
||||
|
||||
public String getMaterialModel() {
|
||||
return MaterialModel;
|
||||
}
|
||||
|
||||
public void setMaterialModel(String materialModel) {
|
||||
MaterialModel = materialModel;
|
||||
}
|
||||
|
||||
public String getCategoryName() {
|
||||
return categoryName;
|
||||
}
|
||||
|
||||
public void setCategoryName(String categoryName) {
|
||||
this.categoryName = categoryName;
|
||||
}
|
||||
|
||||
public String getMaterialOther() {
|
||||
return MaterialOther;
|
||||
}
|
||||
|
||||
public void setMaterialOther(String materialOther) {
|
||||
MaterialOther = materialOther;
|
||||
}
|
||||
|
||||
public String getMaterialUnit() {
|
||||
return MaterialUnit;
|
||||
}
|
||||
|
||||
public void setMaterialUnit(String materialUnit) {
|
||||
MaterialUnit = materialUnit;
|
||||
}
|
||||
|
||||
public BigDecimal getSafetystock() {
|
||||
return safetystock;
|
||||
}
|
||||
|
||||
public void setSafetystock(BigDecimal safetystock) {
|
||||
this.safetystock = safetystock;
|
||||
}
|
||||
|
||||
public BigDecimal getBasicInNumber() {
|
||||
return BasicInNumber;
|
||||
}
|
||||
|
||||
public void setBasicInNumber(BigDecimal basicInNumber) {
|
||||
BasicInNumber = basicInNumber;
|
||||
}
|
||||
|
||||
public BigDecimal getBasicOutNumber() {
|
||||
return BasicOutNumber;
|
||||
}
|
||||
|
||||
public void setBasicOutNumber(BigDecimal basicOutNumber) {
|
||||
BasicOutNumber = basicOutNumber;
|
||||
}
|
||||
|
||||
public BigDecimal getBasicNumber() {
|
||||
return BasicNumber;
|
||||
}
|
||||
|
||||
public void setBasicNumber(BigDecimal basicNumber) {
|
||||
BasicNumber = basicNumber;
|
||||
}
|
||||
|
||||
public BigDecimal getBasicLinjieNumber() {
|
||||
return BasicLinjieNumber;
|
||||
}
|
||||
|
||||
public void setBasicLinjieNumber(BigDecimal basicLinjieNumber) {
|
||||
BasicLinjieNumber = basicLinjieNumber;
|
||||
}
|
||||
}
|
||||
@@ -316,4 +316,24 @@ public class DepotService {
|
||||
return deleteTotal;
|
||||
|
||||
}
|
||||
|
||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||
public int updateDepotIsDefault(Boolean isDefault, Long depotID) throws Exception{
|
||||
logService.insertLog(BusinessConstants.LOG_INTERFACE_NAME_DEPOT,BusinessConstants.LOG_OPERATION_TYPE_EDIT+depotID,
|
||||
((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest());
|
||||
Depot depot = new Depot();
|
||||
depot.setIsdefault(isDefault);
|
||||
DepotExample example = new DepotExample();
|
||||
example.createCriteria().andIdEqualTo(depotID);
|
||||
int result=0;
|
||||
try{
|
||||
result = depotMapper.updateByExampleSelective(depot, example);
|
||||
}catch(Exception e){
|
||||
logger.error("异常码[{}],异常提示[{}],异常[{}]",
|
||||
ExceptionConstants.DATA_WRITE_FAIL_CODE,ExceptionConstants.DATA_WRITE_FAIL_MSG,e);
|
||||
throw new BusinessRunTimeException(ExceptionConstants.DATA_WRITE_FAIL_CODE,
|
||||
ExceptionConstants.DATA_WRITE_FAIL_MSG);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,17 +9,16 @@ import com.jsh.erp.datasource.mappers.DepotHeadMapper;
|
||||
import com.jsh.erp.datasource.mappers.DepotItemMapper;
|
||||
import com.jsh.erp.datasource.mappers.DepotItemMapperEx;
|
||||
import com.jsh.erp.datasource.mappers.SerialNumberMapperEx;
|
||||
import com.jsh.erp.datasource.vo.DepotItemStockWarningCount;
|
||||
import com.jsh.erp.exception.BusinessRunTimeException;
|
||||
import com.jsh.erp.service.log.LogService;
|
||||
import com.jsh.erp.service.material.MaterialService;
|
||||
import com.jsh.erp.service.serialNumber.SerialNumberService;
|
||||
import com.jsh.erp.service.user.UserService;
|
||||
import com.jsh.erp.utils.ErpInfo;
|
||||
import com.jsh.erp.utils.QueryUtils;
|
||||
import com.jsh.erp.utils.StringUtil;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.dao.DataAccessException;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.context.request.RequestContextHolder;
|
||||
@@ -32,8 +31,6 @@ import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static com.jsh.erp.utils.ResponseJsonUtil.returnJson;
|
||||
|
||||
@Service
|
||||
public class DepotItemService {
|
||||
private Logger logger = LoggerFactory.getLogger(DepotItemService.class);
|
||||
@@ -795,4 +792,32 @@ public class DepotItemService {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||
public List<DepotItemStockWarningCount> findStockWarningCount(int offset, Integer rows, Integer pid) {
|
||||
|
||||
List<DepotItemStockWarningCount> list = null;
|
||||
try{
|
||||
list =depotItemMapperEx.findStockWarningCount( offset, rows, pid);
|
||||
}catch(Exception e){
|
||||
logger.error("异常码[{}],异常提示[{}],异常[{}]",
|
||||
ExceptionConstants.DATA_READ_FAIL_CODE,ExceptionConstants.DATA_READ_FAIL_MSG,e);
|
||||
throw new BusinessRunTimeException(ExceptionConstants.DATA_READ_FAIL_CODE,
|
||||
ExceptionConstants.DATA_READ_FAIL_MSG);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||
public int findStockWarningCountTotal(Integer pid) {
|
||||
int result = 0;
|
||||
try{
|
||||
result =depotItemMapperEx.findStockWarningCountTotal(pid);
|
||||
}catch(Exception e){
|
||||
logger.error("异常码[{}],异常提示[{}],异常[{}]",
|
||||
ExceptionConstants.DATA_READ_FAIL_CODE,ExceptionConstants.DATA_READ_FAIL_MSG,e);
|
||||
throw new BusinessRunTimeException(ExceptionConstants.DATA_READ_FAIL_CODE,
|
||||
ExceptionConstants.DATA_READ_FAIL_MSG);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user