Browse Source

更改

master
ligaode 2 months ago
parent
commit
3c1db2b7b6
  1. 11
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeign.java
  2. 11
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeignFallback.java
  3. 10
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java
  4. 10
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeignFallback.java
  5. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java
  6. 22
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml
  7. 14
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java
  8. 150
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java
  9. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java
  10. 28
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml
  11. 14
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java
  12. 177
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java
  13. 34
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/storechange/AppStoreChangeFeign.java
  14. 24
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/storechange/AppStoreChangeScanVo.java
  15. 30
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/firstshelves/AppFirstShelvesService.java
  16. 53
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/storechange/AppStoreChangeRest.java
  17. 207
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/storechange/AppStoreChangeService.java
  18. 66
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventory.java
  19. 10
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventoryFeign.java
  20. 11
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsH5Rest.java
  21. 30
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryRest.java
  22. 6
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java
  23. 52
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml
  24. 12
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java

11
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeign.java

@ -37,6 +37,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.text.ParseException;
import java.util.List;
@Api(tags = "专项返利表")
@FeignClient(
@ -51,6 +52,11 @@ public interface ScmSpecialRebateFeign {
@ResponseBody
public ResultBean<PagerVo<ScmSpecialRebateVo>> listPage(@RequestBody PagerQuery<ScmSpecialRebateQuery> pq);
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listAll")
@ResponseBody
public ResultBean<List<ScmSpecialRebateVo>> listAll(@RequestBody ScmSpecialRebateQuery query);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
@ -81,6 +87,11 @@ public interface ScmSpecialRebateFeign {
@ResponseBody
public ResultBean<PagerVo<ScmSpecialRebateVo>> checkApplyGetSpecialRebate(@RequestBody PagerQuery<ScmSpecialRebateQuery> pq);
@ApiOperation("专项返利核对申请选择待核对专项返利信息")
@PostMapping("/checkApplyGetSpecialRebateAll")
@ResponseBody
public ResultBean<List<ScmSpecialRebateVo>> checkApplyGetSpecialRebateAll(@RequestBody ScmSpecialRebateQuery query);
@ApiOperation("专项返利核对申请选择已上传专项返利信息")
@PostMapping("/checkApplyGetAlreadyUploadSpecialRebate")
@ResponseBody

11
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeignFallback.java

@ -34,6 +34,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.text.ParseException;
import java.util.List;
/**
* Project: anrui-scm(专项返利管理) <br/>
@ -57,6 +58,11 @@ public class ScmSpecialRebateFeignFallback implements ScmSpecialRebateFeign {
return rb.setMsg("接口anrui-scm/scmspecialrebate/listPage无法访问");
}
@Override
public ResultBean<List<ScmSpecialRebateVo>> listAll(ScmSpecialRebateQuery query) {
return null;
}
@Override
public ResultBean save(ScmSpecialRebateDto dto){
return ResultBean.fireFail().setMsg("接口anrui-scm/scmspecialrebate/save无法访问");
@ -88,6 +94,11 @@ public class ScmSpecialRebateFeignFallback implements ScmSpecialRebateFeign {
return null;
}
@Override
public ResultBean<List<ScmSpecialRebateVo>> checkApplyGetSpecialRebateAll(ScmSpecialRebateQuery query) {
return null;
}
@Override
public ResultBean<PagerVo<ScmSpecialRebateVo>> checkApplyGetAlreadyUploadSpecialRebate(PagerQuery<ScmSpecialRebateQuery> pq) {
return null;

10
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java

@ -67,6 +67,11 @@ public interface ScmVehRebateFeign {
@ResponseBody
public ResultBean<PagerVo<ScmVehRebateVo>> listPage(@RequestBody PagerQuery<ScmVehRebateQuery> pq);
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listAll")
@ResponseBody
public ResultBean<List<ScmVehRebateVo>> listAll(@RequestBody ScmVehRebateQuery query);
@ApiOperation("单车返利未预提申请选择单车返利信息")
@PostMapping("/withApplyGetVehRebate")
@ResponseBody
@ -77,6 +82,11 @@ public interface ScmVehRebateFeign {
@ResponseBody
public ResultBean<PagerVo<ScmVehRebateVo>> checkApplyGetVehRebate(@RequestBody PagerQuery<ScmVehRebateQuery> pq);
@ApiOperation("单车返利核对申请选择待核对单车返利信息")
@PostMapping("/checkApplyGetVehRebateAll")
@ResponseBody
public ResultBean<List<ScmVehRebateVo>> checkApplyGetVehRebateAll(@RequestBody ScmVehRebateQuery query);
@ApiOperation("一次导出")
@PostMapping("/excelListOne")
public void excelListOne(@RequestBody ScmVehRebateQuery scmVehRebateQuery);

10
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeignFallback.java

@ -58,6 +58,11 @@ public class ScmVehRebateFeignFallback implements ScmVehRebateFeign {
return rb.setMsg("接口anrui-scm/scmvehrebate/listPage无法访问");
}
@Override
public ResultBean<List<ScmVehRebateVo>> listAll(ScmVehRebateQuery query) {
return null;
}
@Override
public ResultBean<PagerVo<ScmVehRebateVo>> withApplyGetVehRebate(PagerQuery<ScmVehRebateQuery> pq) {
return null;
@ -68,6 +73,11 @@ public class ScmVehRebateFeignFallback implements ScmVehRebateFeign {
return null;
}
@Override
public ResultBean<List<ScmVehRebateVo>> checkApplyGetVehRebateAll(ScmVehRebateQuery query) {
return null;
}
@Override
public void excelListOne(ScmVehRebateQuery scmVehRebateQuery) {

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java

@ -85,4 +85,8 @@ public interface ScmSpecialRebateMapper extends BaseMapper<ScmSpecialRebate> {
void updateAdjustmentState(@Param("sid") String sid, @Param("adjustmentState") int adjustmentState);
List<ScmSpecialRebateExcelVo> excelList(@Param(Constants.WRAPPER) QueryWrapper<ScmSpecialRebate> qw);
List<ScmSpecialRebateVo> checkApplyGetSpecialRebateAll(@Param(Constants.WRAPPER) QueryWrapper<ScmSpecialRebate> qw);
List<ScmSpecialRebateVo> listAll(@Param(Constants.WRAPPER) QueryWrapper<ScmSpecialRebate> qw);
}

22
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml

@ -151,4 +151,26 @@
${ew.sqlSegment}
</where>
</select>
<select id="checkApplyGetSpecialRebateAll" resultType="com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo">
SELECT *,
expectItureCost + expectTreatCost + expectSuppCost AS expectCost,
expectItureCost + expectTreatCost + expectSuppCost AS withholdCost,
onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money
FROM scm_special_rebate
<where>
${ew.sqlSegment}
</where>
</select>
<select id="listAll" resultType="com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo">
SELECT *,
expectItureCost + expectTreatCost + expectSuppCost AS expectCost,
expectItureCost + expectTreatCost + expectSuppCost AS withholdCost,
onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money
FROM scm_special_rebate
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

14
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java

@ -73,6 +73,13 @@ public class ScmSpecialRebateRest implements ScmSpecialRebateFeign {
return rb.success().setData(pv);
}
@Override
public ResultBean<List<ScmSpecialRebateVo>> listAll(ScmSpecialRebateQuery query) {
ResultBean rb = ResultBean.fireFail();
List<ScmSpecialRebateVo> scmSpecialRebateVoList = scmSpecialRebateService.listAll(query);
return rb.success().setData(scmSpecialRebateVoList);
}
@ApiOperation("导出")
@PostMapping("/excelList")
public void excelList(@RequestBody ScmSpecialRebateQuery query) {
@ -147,6 +154,13 @@ public class ScmSpecialRebateRest implements ScmSpecialRebateFeign {
return rb.success().setData(pv);
}
@Override
public ResultBean<List<ScmSpecialRebateVo>> checkApplyGetSpecialRebateAll(ScmSpecialRebateQuery query) {
ResultBean rb = ResultBean.fireFail();
List<ScmSpecialRebateVo> scmSpecialRebateVoList = scmSpecialRebateService.checkApplyGetSpecialRebateAll(query);
return rb.success().setData(scmSpecialRebateVoList);
}
@Override
public ResultBean<PagerVo<ScmSpecialRebateVo>> checkApplyGetAlreadyUploadSpecialRebate(PagerQuery<ScmSpecialRebateQuery> pq) {
ResultBean rb = ResultBean.fireFail();

150
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java

@ -150,6 +150,76 @@ public class ScmSpecialRebateService extends MybatisBaseService<ScmSpecialRebate
return p;
}
public List<ScmSpecialRebateVo> listAll(ScmSpecialRebateQuery query) {
QueryWrapper<ScmSpecialRebate> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("orgPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("orgPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("orgPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("orgPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("createBySid", query.getUserSid());
} else {
List<ScmSpecialRebateVo> p = new ArrayList<>();
return p;
}
} else {
List<ScmSpecialRebateVo> p = new ArrayList<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getCreateOrgName())) {
qw.like("createOrgName", query.getCreateOrgName());
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("brandName", query.getBrandName());
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("purchaseSystemName", query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getRebateTypeKey())) {
qw.eq("rebateTypeKey", query.getRebateTypeKey());
}
if (StringUtils.isNotBlank(query.getRebateName())) {
qw.like("rebateName", query.getRebateName());
}
if (StringUtils.isNotBlank(query.getState())) {
qw.eq("state", query.getState());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("createTime");
List<ScmSpecialRebateVo> scmSpecialRebateVoList = baseMapper.listAll(qw);
return scmSpecialRebateVoList;
}
public ResultBean saveOrUpdateDto(ScmSpecialRebateDto dto) {
ResultBean rb = ResultBean.fireFail();
String dtoSid = dto.getSid();
@ -318,6 +388,86 @@ public class ScmSpecialRebateService extends MybatisBaseService<ScmSpecialRebate
return p;
}
public List<ScmSpecialRebateVo> checkApplyGetSpecialRebateAll(ScmSpecialRebateQuery query) {
QueryWrapper<ScmSpecialRebate> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("orgPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("orgPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("orgPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("orgPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("createBySid", query.getUserSid());
} else {
List<ScmSpecialRebateVo> p = new ArrayList<>();
return p;
}
} else {
List<ScmSpecialRebateVo> p = new ArrayList<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getCreateOrgName())) {
qw.like("createOrgName", query.getCreateOrgName());
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("brandName", query.getBrandName());
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("purchaseSystemName", query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getRebateTypeKey())) {
qw.eq("rebateTypeKey", query.getRebateTypeKey());
}
if (StringUtils.isNotBlank(query.getRebateName())) {
qw.like("rebateName", query.getRebateName());
}
if (StringUtils.isNotBlank(query.getOnceCheckState())) {
qw.eq("onceCheckState", query.getOnceCheckState());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.eq("state", 2);
qw.eq("adjustmentState", 0);
qw.orderByDesc("createTime");
List<ScmSpecialRebateVo> scmSpecialRebateVoList = baseMapper.checkApplyGetSpecialRebateAll(qw);
for (ScmSpecialRebateVo record : scmSpecialRebateVoList) {
//上传状态:未上传
if (StringUtils.isBlank(record.getUploadDate())) {
record.setUploadState("0");
} else {//上传状态:已上传
record.setUploadState("1");
}
}
return scmSpecialRebateVoList;
}
public PagerVo<ScmSpecialRebateVo> checkApplyGetAlreadyUploadSpecialRebate(PagerQuery<ScmSpecialRebateQuery> pq) {
ScmSpecialRebateQuery query = pq.getParams();
QueryWrapper<ScmSpecialRebate> qw = new QueryWrapper<>();

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java

@ -83,4 +83,8 @@ public interface ScmVehRebateMapper extends BaseMapper<ScmVehRebate> {
void delByVehSid(String vehSid);
List<ScmVehRebateExcelVo> excelList(@Param(Constants.WRAPPER) QueryWrapper<ScmVehRebate> qw);
List<ScmVehRebateVo> checkApplyGetVehRebateAll(@Param(Constants.WRAPPER) QueryWrapper<ScmVehRebate> qw);
List<ScmVehRebateVo> listAll(@Param(Constants.WRAPPER) QueryWrapper<ScmVehRebate> qw);
}

28
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml

@ -131,4 +131,32 @@
${ew.sqlSegment}
</where>
</select>
<select id="checkApplyGetVehRebateAll" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT
*,
sid AS vehRebateSid,
expectTreatCost + expectSuppCost AS expectCost,
expectTreatCost + expectSuppCost AS withholdCost,
onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money
FROM
scm_veh_rebate
<where>
${ew.sqlSegment}
</where>
</select>
<select id="listAll" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT
*,
sid AS vehRebateSid,
expectTreatCost + expectSuppCost AS expectCost,
expectTreatCost + expectSuppCost AS withholdCost,
onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money
FROM
scm_veh_rebate
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

14
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java

@ -79,6 +79,13 @@ public class ScmVehRebateRest implements ScmVehRebateFeign {
return rb.success().setData(pv);
}
@Override
public ResultBean<List<ScmVehRebateVo>> listAll(ScmVehRebateQuery query) {
ResultBean rb = ResultBean.fireFail();
List<ScmVehRebateVo> scmVehRebateVoList = scmVehRebateService.listAll(query);
return rb.success().setData(scmVehRebateVoList);
}
@ApiOperation("导出")
@PostMapping("/excelList")
public void excelList(@RequestBody ScmVehRebateQuery query) {
@ -109,6 +116,13 @@ public class ScmVehRebateRest implements ScmVehRebateFeign {
return rb.success().setData(pv);
}
@Override
public ResultBean<List<ScmVehRebateVo>> checkApplyGetVehRebateAll(ScmVehRebateQuery query) {
ResultBean rb = ResultBean.fireFail();
List<ScmVehRebateVo> scmVehRebateVoList = scmVehRebateService.checkApplyGetVehRebateAll(query);
return rb.success().setData(scmVehRebateVoList);
}
@Override
public void excelListOne(ScmVehRebateQuery scmVehRebateQuery) {
//得到所有要导出的数据

177
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java

@ -66,19 +66,6 @@ import java.net.URLEncoder;
import java.util.*;
import java.util.regex.Pattern;
/**
* Project: anrui-scm(单车返利) <br/>
* File: ScmVehRebateService.java <br/>
* Class: com.yxt.anrui.scm.biz.scmvehrebate.ScmVehRebateService <br/>
* Description: 单车返利表 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-08-24 09:01:54 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper, ScmVehRebate> {
@ -179,6 +166,87 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
return p;
}
public List<ScmVehRebateVo> listAll(ScmVehRebateQuery query) {
QueryWrapper<ScmVehRebate> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("orgPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("orgPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("orgPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("orgPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("createBySid", query.getUserSid());
} else {
List<ScmVehRebateVo> p = new ArrayList<>();
return p;
}
} else {
List<ScmVehRebateVo> p = new ArrayList<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("brandName", query.getBrandName());
}
if (StringUtils.isNotBlank(query.getVehModelName())) {
qw.like("vehModelName", query.getVehModelName());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("vinNo", query.getVinNo());
}
if (StringUtils.isNotBlank(query.getRebateTypeKey())) {
qw.eq("rebateTypeKey", query.getRebateTypeKey());
}
if (StringUtils.isNotBlank(query.getRebateName())) {
qw.like("rebateName", query.getRebateName());
}
if (StringUtils.isNotBlank(query.getState())) {
qw.eq("state", query.getState());
}
if (StringUtils.isNotBlank(query.getUseOrgName())) {
qw.like("useOrgName", query.getUseOrgName());
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("purchaseSystemName", query.getPurchaseSystemName());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("createTime");
List<ScmVehRebateVo> scmVehRebateVoList = baseMapper.listAll(qw);
for (ScmVehRebateVo record : scmVehRebateVoList) {
if ("001".equals(record.getCalculationModeKey())){
record.setCalculationStandard(record.getCalculationStandard() + "%");
}
}
return scmVehRebateVoList;
}
public PagerVo<ScmVehRebateVo> withApplyGetVehRebate(PagerQuery<ScmVehRebateQuery> pq) {
ScmVehRebateQuery query = pq.getParams();
QueryWrapper<ScmVehRebate> qw = new QueryWrapper<>();
@ -302,6 +370,89 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
return p;
}
public List<ScmVehRebateVo> checkApplyGetVehRebateAll(ScmVehRebateQuery query) {
QueryWrapper<ScmVehRebate> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("orgPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("orgPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("orgPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("orgPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("createBySid", query.getUserSid());
} else {
List<ScmVehRebateVo> p = new ArrayList<>();
return p;
}
} else {
List<ScmVehRebateVo> p = new ArrayList<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("brandName", query.getBrandName());
}
if (StringUtils.isNotBlank(query.getVehModelName())) {
qw.like("vehModelName", query.getVehModelName());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("vinNo", query.getVinNo());
}
if (StringUtils.isNotBlank(query.getRebateTypeValue())) {
qw.like("rebateTypeValue", query.getRebateTypeValue());
}
if (StringUtils.isNotBlank(query.getRebateName())) {
qw.like("rebateName", query.getRebateName());
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("purchaseSystemName", query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getUseOrgName())) {
qw.like("useOrgName", query.getUseOrgName());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.eq("state", 2);
qw.eq("adjustmentState", 0);
qw.orderByDesc("createTime");
List<ScmVehRebateVo> scmVehRebateVoList = baseMapper.checkApplyGetVehRebateAll(qw);
for (ScmVehRebateVo record : scmVehRebateVoList) {
//上传状态:未上传
if (StringUtils.isBlank(record.getUploadDate())) {
record.setUploadState("0");
} else {//上传状态:已上传
record.setUploadState("1");
}
}
return scmVehRebateVoList;
}
public List<OneExcelVo> excelListOne(ScmVehRebateQuery query) {
QueryWrapper<ScmVehRebate> qw = new QueryWrapper<>();
//========================================数据授权开始

34
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/storechange/AppStoreChangeFeign.java

@ -0,0 +1,34 @@
package com.yxt.anrui.terminal.api.as.storechange;
import com.yxt.anrui.terminal.api.as.firstshelves.AppFirstShelvesDto;
import com.yxt.anrui.terminal.api.as.firstshelves.AppFirstShelvesQuery;
import com.yxt.anrui.terminal.api.as.firstshelves.AppFirstShelvesScanVo;
import com.yxt.anrui.terminal.api.as.firstshelves.AppFirstShelvesVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* @Author
* @Date
* @Description
*/
@FeignClient(
contextId = "terminal-AppStoreChange",
name = "anrui-terminal",
path = "v1/storeChange")
public interface AppStoreChangeFeign {
@ApiOperation("标签扫描")
@GetMapping("/scan")
@ResponseBody
public ResultBean<AppStoreChangeScanVo> scan(@RequestParam("content") String content, @RequestParam("type") String type, @RequestParam("orgPath") String orgPath, @RequestParam(value = "storeSid", required = false) String storeSid);
@ApiOperation("上架保存")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody AppFirstShelvesDto dto);
}

24
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/storechange/AppStoreChangeScanVo.java

@ -0,0 +1,24 @@
package com.yxt.anrui.terminal.api.as.storechange;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class AppStoreChangeScanVo implements Vo {
@ApiModelProperty("0商品码,1库位码")
private String type;
@ApiModelProperty("商品sid")
private String sid;
@ApiModelProperty("商品下的库存表里的sid集合")
private List<String> storeSids;
@ApiModelProperty("库位码")
private String houseCode;
@ApiModelProperty("库区名+库位名")
private String houseName;
@ApiModelProperty("仓库地址")
private String houseAddress;
}

30
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/firstshelves/AppFirstShelvesService.java

@ -26,6 +26,8 @@
package com.yxt.anrui.terminal.biz.as.firstshelves;
import cn.hutool.core.date.DateUtil;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.terminal.api.as.firstshelves.*;
import com.yxt.anrui.terminal.fegin.wmsInventory.WmsInventoryFeign;
@ -43,9 +45,11 @@ import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@Service
@ -61,6 +65,8 @@ public class AppFirstShelvesService {
private WmsInitialDetailFeign wmsInitialDetailFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
public ResultBean<AppFirstShelvesVo> list(PagerQuery<AppFirstShelvesQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
@ -100,20 +106,20 @@ public class AppFirstShelvesService {
}
String count = wmsInventoryFeign.selCountByGoodsID(content).getData();
BigDecimal num = null;
if (StringUtils.isNotBlank(count)){
if (StringUtils.isNotBlank(count)) {
num = new BigDecimal(count);
}else {
} else {
num = new BigDecimal("0");
}
WmsGoodsTag wmsGoodsTag = wmsGoodsTagFeign.selectByGoodsId(content).getData();
BigDecimal chae = wmsGoodsTag.getGoodsCount().subtract(num);
if (chae.compareTo(BigDecimal.ZERO) == 0){
if (chae.compareTo(BigDecimal.ZERO) == 0) {
return rb.setMsg("该商品已全部入库");
}
appFirstShelvesScanVo.setType(type);
appFirstShelvesScanVo.setGoodsID(content);
appFirstShelvesScanVo.setGoodsName(wmsGoodsTag.getGoodsSkuTitle());
appFirstShelvesScanVo.setGoodsMax(chae.setScale(0,BigDecimal.ROUND_DOWN).toString());
appFirstShelvesScanVo.setGoodsMax(chae.setScale(0, BigDecimal.ROUND_DOWN).toString());
} else if ("1".equals(type)) {//库位码
if (!content.contains("#")) {
return rb.setMsg("请扫描库位码");
@ -157,9 +163,19 @@ public class AppFirstShelvesService {
List<AppFirstShelvesGoodsDto> goodsList = dto.getGoodsList();
WmsInventorySaveDto wmsInventorySaveDto = new WmsInventorySaveDto();
wmsInventorySaveDto.setCreateBySid(dto.getUserSid());
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData();
wmsInventorySaveDto.setCreateOrgSid(useOrgSid);
wmsInventorySaveDto.setUseOrgSid(useOrgSid);
String createOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData();
wmsInventorySaveDto.setCreateOrgSid(createOrgSid);
String deptSid = "";
List<String> split = Arrays.asList(dto.getOrgPath().split("/"));
if (split.size() > 1) {
//获取本级sid获取本级部门信息
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData();
deptSid = sysOrganization1.getSid();
} else {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
deptSid = sysOrganization.getSid();
}
wmsInventorySaveDto.setUseOrgSid(deptSid);
wmsInventorySaveDto.setFirstInDate(DateUtil.today());
for (AppFirstShelvesGoodsDto appFirstShelvesGoodsDto : goodsList) {
WmsGoodsTag wmsGoodsTag = wmsGoodsTagFeign.selectByGoodsId(appFirstShelvesGoodsDto.getGoodsID()).getData();

53
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/storechange/AppStoreChangeRest.java

@ -0,0 +1,53 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.as.storechange;
import com.yxt.anrui.terminal.api.as.firstshelves.*;
import com.yxt.anrui.terminal.api.as.storechange.AppStoreChangeFeign;
import com.yxt.anrui.terminal.api.as.storechange.AppStoreChangeScanVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("v1/storeChange")
public class AppStoreChangeRest implements AppStoreChangeFeign {
@Autowired
private AppStoreChangeService appStoreChangeService;
@Override
public ResultBean<AppStoreChangeScanVo> scan(String content, String type, String orgPath, String storeSid) {
return appStoreChangeService.scan(content, type, orgPath, storeSid);
}
@Override
public ResultBean save(AppFirstShelvesDto dto) {
return appStoreChangeService.save(dto);
}
}

207
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/storechange/AppStoreChangeService.java

@ -0,0 +1,207 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.as.storechange;
import cn.hutool.core.date.DateUtil;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.terminal.api.as.firstshelves.*;
import com.yxt.anrui.terminal.api.as.storechange.AppStoreChangeScanVo;
import com.yxt.anrui.terminal.fegin.wmsInventory.WmsInventory;
import com.yxt.anrui.terminal.fegin.wmsInventory.WmsInventoryFeign;
import com.yxt.anrui.terminal.fegin.wmsInventory.WmsInventorySaveDto;
import com.yxt.anrui.terminal.fegin.wmsgoodstag.GoodsTagListQuery;
import com.yxt.anrui.terminal.fegin.wmsgoodstag.WmsGoodsTag;
import com.yxt.anrui.terminal.fegin.wmsgoodstag.WmsGoodsTagFeign;
import com.yxt.anrui.terminal.fegin.wmsinitialdetail.WmsInitialDetail;
import com.yxt.anrui.terminal.fegin.wmsinitialdetail.WmsInitialDetailFeign;
import com.yxt.anrui.terminal.fegin.wmswarehouserack.WmsHouseInfoVo;
import com.yxt.anrui.terminal.fegin.wmswarehouserack.WmsWarehouseRackFeign;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class AppStoreChangeService {
@Resource
private WmsGoodsTagFeign wmsGoodsTagFeign;
@Resource
private WmsWarehouseRackFeign wmsWarehouseRackFeign;
@Resource
private WmsInventoryFeign wmsInventoryFeign;
@Resource
private WmsInitialDetailFeign wmsInitialDetailFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
public ResultBean<AppFirstShelvesVo> list(PagerQuery<AppFirstShelvesQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerQuery<GoodsTagListQuery> pagerQuery1 = new PagerQuery<>();
GoodsTagListQuery params = new GoodsTagListQuery();
AppFirstShelvesQuery params1 = pagerQuery.getParams();
params.setUserSid(params1.getUserSid());
params.setOrgPath(params1.getOrgPath());
params.setMenuSid(params1.getMenuSid());
params.setName(params1.getName());
pagerQuery1.setParams(params);
pagerQuery1.setSize(1000);
PagerVo<WmsGoodsTag> data = wmsGoodsTagFeign.goodsTagList(pagerQuery1).getData();
AppFirstShelvesVo appFirstShelvesVo = new AppFirstShelvesVo();
List<AppFirstShelvesGoodsVo> goods = new ArrayList<>();
List<WmsGoodsTag> list = data.getRecords();
for (WmsGoodsTag wmsGoodsTag : list) {
AppFirstShelvesGoodsVo appFirstShelvesGoodsVo = new AppFirstShelvesGoodsVo();
appFirstShelvesGoodsVo.setSid(wmsGoodsTag.getSid());
appFirstShelvesGoodsVo.setName(wmsGoodsTag.getGoodsSkuTitle());
appFirstShelvesGoodsVo.set_id(wmsGoodsTag.getGoodsID());
appFirstShelvesGoodsVo.setNum(wmsGoodsTag.getGoodsCount());
appFirstShelvesGoodsVo.setUnit(wmsGoodsTag.getUnit());
appFirstShelvesGoodsVo.setSpecs(wmsGoodsTag.getGoodsSkuOwnSpec());
goods.add(appFirstShelvesGoodsVo);
}
appFirstShelvesVo.setGoods(goods);
return rb.success().setData(appFirstShelvesVo);
}
public ResultBean<AppStoreChangeScanVo> scan(String content, String type, String orgPath, String storeSid) {
ResultBean rb = ResultBean.fireFail();
String deptSid = "";
if (StringUtils.isNotBlank(orgPath)) {
List<String> split = Arrays.asList(orgPath.split("/"));
if (split.size() > 1) {
//获取本级sid获取本级部门信息
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData();
deptSid = sysOrganization1.getSid();
} else {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
deptSid = sysOrganization.getSid();
}
}
AppStoreChangeScanVo appStoreChangeScanVo = new AppStoreChangeScanVo();
if ("0".equals(type)) {//商品码
if (content.contains("#")) {
return rb.setMsg("请扫描商品码");
}
if (StringUtils.isBlank(storeSid)) {
List<WmsInventory> wmsInventoryList = wmsInventoryFeign.selByGoodsIDAndUseOrgSid(content, deptSid).getData();
if (wmsInventoryList.size() == 0) {
return rb.setMsg("当前商品不可移位");
}
appStoreChangeScanVo.setType(type);
appStoreChangeScanVo.setSid(wmsInventoryList.get(0).getGoodsSpuSid());
appStoreChangeScanVo.setStoreSids(wmsInventoryList.stream().map(WmsInventory::getWarehouseSid).collect(Collectors.toList()));
} else {
List<WmsInventory> wmsInventoryList = wmsInventoryFeign.selByGoodsIDAndUseOrgSidAndWarehouseSid(content, deptSid, storeSid).getData();
appStoreChangeScanVo.setType(type);
appStoreChangeScanVo.setSid(wmsInventoryList.get(0).getGoodsSpuSid());
appStoreChangeScanVo.setStoreSids(wmsInventoryList.stream().map(WmsInventory::getWarehouseSid).collect(Collectors.toList()));
}
} else if ("1".equals(type)) {//库位码
if (!content.contains("#")) {
return rb.setMsg("请扫描库位码");
}
String[] split = content.split("#");
String houseCode = split[0];
ResultBean<WmsHouseInfoVo> wmsHouseInfoVoResultBean = wmsWarehouseRackFeign.selHouseInfoByFullCode(houseCode);
if (wmsHouseInfoVoResultBean.getSuccess()) {
WmsHouseInfoVo houseInfoVo = wmsHouseInfoVoResultBean.getData();
if (null != houseInfoVo) {
String houseName = "";
String areaName = "";
String rackName = "";
String zoneName = "";
if (StringUtils.isNotBlank(houseInfoVo.getWarehouseName())) {
houseName = houseInfoVo.getWarehouseName();
}
if (StringUtils.isNotBlank(houseInfoVo.getWareAreaName())) {
areaName = houseInfoVo.getWareAreaName();
}
if (StringUtils.isNotBlank(houseInfoVo.getWarehouseRackName())) {
rackName = houseInfoVo.getWarehouseRackName();
}
if (StringUtils.isNotBlank(houseInfoVo.getWarehouseZoneName())) {
zoneName = houseInfoVo.getWarehouseZoneName();
}
appStoreChangeScanVo.setHouseName(houseName + "-" + zoneName + "-" + areaName);
appStoreChangeScanVo.setHouseAddress(houseInfoVo.getWarehouseRackCode());
appStoreChangeScanVo.setHouseCode(houseCode);
appStoreChangeScanVo.setType(type);
} else {
return rb.setMsg("扫描库位码为空");
}
}
}
return rb.success().setData(appStoreChangeScanVo);
}
public ResultBean save(AppFirstShelvesDto dto) {
ResultBean rb = ResultBean.fireFail();
List<AppFirstShelvesGoodsDto> goodsList = dto.getGoodsList();
WmsInventorySaveDto wmsInventorySaveDto = new WmsInventorySaveDto();
wmsInventorySaveDto.setCreateBySid(dto.getUserSid());
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData();
wmsInventorySaveDto.setCreateOrgSid(useOrgSid);
wmsInventorySaveDto.setUseOrgSid(useOrgSid);
wmsInventorySaveDto.setFirstInDate(DateUtil.today());
for (AppFirstShelvesGoodsDto appFirstShelvesGoodsDto : goodsList) {
WmsGoodsTag wmsGoodsTag = wmsGoodsTagFeign.selectByGoodsId(appFirstShelvesGoodsDto.getGoodsID()).getData();
WmsInitialDetail wmsInitialDetail = wmsInitialDetailFeign.selBySid(wmsGoodsTag.getBillDetailSid()).getData();
WmsHouseInfoVo wmsHouseInfoVo = wmsWarehouseRackFeign.selHouseInfoByFullCode(appFirstShelvesGoodsDto.getHouseCode()).getData();
wmsInventorySaveDto.setGoodsSpuSid(wmsGoodsTag.getGoodsSpuSid());
wmsInventorySaveDto.setGoodsSpuName(wmsGoodsTag.getGoodsSpuName());
wmsInventorySaveDto.setGoodsSkuSid(wmsGoodsTag.getGoodsSkuSid());
wmsInventorySaveDto.setGoodsSkuTitle(wmsGoodsTag.getGoodsSkuTitle());
wmsInventorySaveDto.setGoodsSkuCode(wmsGoodsTag.getGoodsSkuCode());
wmsInventorySaveDto.setGoodsSkuOwnSpec(wmsGoodsTag.getGoodsSkuOwnSpec());
wmsInventorySaveDto.setUnit(wmsGoodsTag.getUnit());
wmsInventorySaveDto.setCount(appFirstShelvesGoodsDto.getCount());
wmsInventorySaveDto.setGoodsID(appFirstShelvesGoodsDto.getGoodsID());
wmsInventorySaveDto.setManufacturerSid(wmsInitialDetail.getManufacturerSid());
wmsInventorySaveDto.setManufacturerName(wmsInitialDetail.getManufacturerName());
wmsInventorySaveDto.setFirstInDate(DateUtil.formatDate(wmsInitialDetail.getFirstInDate()));
wmsInventorySaveDto.setWarehouseSid(wmsHouseInfoVo.getWarehouseSid());
wmsInventorySaveDto.setWarehouseName(wmsHouseInfoVo.getWarehouseName());
wmsInventorySaveDto.setWarehouseRackSid(wmsHouseInfoVo.getWarehouseRackSid());
wmsInventorySaveDto.setWarehouseRackCode(appFirstShelvesGoodsDto.getHouseCode());
wmsInventoryFeign.saveWmsInventory(wmsInventorySaveDto).getData();
}
return rb.success();
}
}

66
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventory.java

@ -0,0 +1,66 @@
package com.yxt.anrui.terminal.fegin.wmsInventory;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class WmsInventory extends BaseEntity {
@ApiModelProperty("批次号")
private String batchNumber;
@ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)")
private String goodsID;
@ApiModelProperty("商品基础信息sid")
private String goodsSpuSid;
@ApiModelProperty("商品名称")
private String goodsSpuName;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle;
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode;
@ApiModelProperty("规格型号")
private String goodsSkuOwnSpec;
@ApiModelProperty("计量单位")
private String unit;
@ApiModelProperty("现有量")
private BigDecimal count;
@ApiModelProperty("分配量(锁定数量,出库申请通过,但未实际出库)")
private BigDecimal allocateCount;
@ApiModelProperty("拣货量")
private BigDecimal pickCount;
@ApiModelProperty("冻结量")
private BigDecimal freezeCount;
@ApiModelProperty("入库单价")
private BigDecimal cost;
@ApiModelProperty("税率")
private BigDecimal taxRate;
@ApiModelProperty("仓库sid")
private String warehouseSid;
@ApiModelProperty("仓库名称")
private String warehouseName;
@ApiModelProperty("库位sid")
private String warehouseRackSid;
@ApiModelProperty("库位编码")
private String warehouseRackCode;
@ApiModelProperty("首次入库日期-计算库龄的依据")
private Date firstInDate;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("厂家sid")
private String manufacturerSid; // 库位sid
@ApiModelProperty("厂家名称")
private String manufacturerName; // 库位编号
@ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
private String supplierSid;
@ApiModelProperty("客户/供应商名称")
private String supplierName;
}

10
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventoryFeign.java

@ -12,6 +12,8 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @description: 商品基础信息
* @author: fzz
@ -39,4 +41,12 @@ public interface WmsInventoryFeign {
@ApiOperation("保存商品库存")
@PostMapping("/saveWmsInventory")
ResultBean saveWmsInventory(@RequestBody WmsInventorySaveDto dto);
@ApiOperation("根据商品ID和部门sid查询")
@PostMapping("/selByGoodsIDAndUseOrgSid")
ResultBean<List<WmsInventory>> selByGoodsIDAndUseOrgSid(@RequestParam("goodID") String goodID, @RequestParam("useOrgSid") String useOrgSid);
@ApiOperation("根据商品ID和部门sid和仓库sid查询")
@PostMapping("/selByGoodsIDAndUseOrgSidAndWarehouseSid")
ResultBean<List<WmsInventory>> selByGoodsIDAndUseOrgSidAndWarehouseSid(@RequestParam("goodID") String goodID, @RequestParam("useOrgSid") String useOrgSid, @RequestParam("warehouseSid") String warehouseSid);
}

11
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsH5Rest.java

@ -50,6 +50,17 @@ public class WmsH5Rest {
return rb.success().setData(vo);
}
@GetMapping("goods2")
@ApiOperation("扫描商品标签看详情")
ResultBean<GoodsTagH5Vo> goods2(@RequestParam("sid") String sid) {
ResultBean<GoodsTagH5Vo> rb = ResultBean.fireFail();
GoodsTagH5Vo vo = wmsInventoryService.scanGoodsTag(sid);
if (null == vo) {
return rb.fail().setMsg("商品不存在");
}
return rb.success().setData(vo);
}
@GetMapping("h5/{qrCode}")
@ApiOperation("扫描商品标签看详情")
ResultBean<String> h5Code(@PathVariable("qrCode") String qrCode) {

30
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryRest.java

@ -38,7 +38,6 @@ public class WmsInventoryRest {
HttpServletResponse response;
@ApiOperation("根据goodsID获取数据")
@GetMapping("/getListByGoodsID")
public ResultBean<List<WmsInventory>> getListByGoodsID(@RequestParam("goodsID") String goodsID) {
@ -251,9 +250,11 @@ public class WmsInventoryRest {
@ApiOperation("根据维修单号和旧件图号查询旧件库存")
@PostMapping("/selBillNoAndCode")
ResultBean<List<WmsInventoryReturnFactSelectList>> selBillNoAndCode(@RequestParam("sourceBillNo") String sourceBillNo,@RequestParam("goodsSkuCode") String goodsSkuCode,@RequestParam("deptSid") String deptSid){
return wmsInventoryService.selBillNoAndCode(sourceBillNo,goodsSkuCode,deptSid);
};
ResultBean<List<WmsInventoryReturnFactSelectList>> selBillNoAndCode(@RequestParam("sourceBillNo") String sourceBillNo, @RequestParam("goodsSkuCode") String goodsSkuCode, @RequestParam("deptSid") String deptSid) {
return wmsInventoryService.selBillNoAndCode(sourceBillNo, goodsSkuCode, deptSid);
}
;
@ApiOperation("根据Sid获取库存实体")
@PostMapping("/fetchEntityBySid")
@ -271,7 +272,7 @@ public class WmsInventoryRest {
@ApiOperation("根据商品skuSid计算平均入库价")
@GetMapping("/compute")
ResultBean<BigDecimal> compute(@RequestParam("skuSid") String skuSid){
ResultBean<BigDecimal> compute(@RequestParam("skuSid") String skuSid) {
ResultBean rb = ResultBean.fireFail();
BigDecimal price = wmsInventoryService.compute(skuSid);
return rb.success().setData(price);
@ -304,9 +305,22 @@ public class WmsInventoryRest {
@ApiOperation("根据商品ID查询库存数量")
@PostMapping("/selCountByGoodsID")
public ResultBean<String> selCountByGoodsID(@RequestParam("goodsID") String goodsID){
public ResultBean<String> selCountByGoodsID(@RequestParam("goodsID") String goodsID) {
return wmsInventoryService.selCountByGoodsID(goodsID);
}
@ApiOperation("根据商品ID和部门sid查询")
@PostMapping("/selByGoodsIDAndUseOrgSid")
ResultBean<List<WmsInventory>> selByGoodsIDAndUseOrgSid(@RequestParam("goodID") String goodID, @RequestParam("useOrgSid") String useOrgSid) {
return wmsInventoryService.selByGoodsIDAndUseOrgSid(goodID, useOrgSid);
}
@ApiOperation("根据商品ID和部门sid和仓库sid查询")
@PostMapping("/selByGoodsIDAndUseOrgSidAndWarehouseSid")
ResultBean<List<WmsInventory>> selByGoodsIDAndUseOrgSidAndWarehouseSid(@RequestParam("goodID") String goodID, @RequestParam("useOrgSid") String useOrgSid, @RequestParam("warehouseSid") String warehouseSid) {
return wmsInventoryService.selByGoodsIDAndUseOrgSidAndWarehouseSid(goodID, useOrgSid, warehouseSid);
}
//----------------------------- 报表 -----------------------------
@ApiOperation("滞销品查询")
@PostMapping("/deadStockList")
@ -327,9 +341,9 @@ public class WmsInventoryRest {
//------------------------------ 行政类审批查询库存 ---------------------------------------
@ApiOperation("行政类审批查询库存")
@PostMapping("/oaInventoryList")
public ResultBean<List<FormCommon>> oaInventoryList(@RequestParam("orgPath") String orgPath,@RequestParam("warehouseTypeValue") String warehouseTypeValue) {
public ResultBean<List<FormCommon>> oaInventoryList(@RequestParam("orgPath") String orgPath, @RequestParam("warehouseTypeValue") String warehouseTypeValue) {
ResultBean<List<FormCommon>> rb = ResultBean.fireFail();
List<FormCommon> list = wmsInventoryService.oaInventoryList(orgPath,warehouseTypeValue);
List<FormCommon> list = wmsInventoryService.oaInventoryList(orgPath, warehouseTypeValue);
return rb.success().setData(list);
}

6
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java

@ -108,4 +108,10 @@ public interface WmsInventoryMapper extends BaseMapper<WmsInventory> {
@Select("select count from wms_inventory where goodsID = #{goodsID}")
String selCountByGoodsID(String goodsID);
@Select("select * from wms_inventory where goodsID = #{goodsID} and useOrgSid = #{useOrgSid}")
List<WmsInventory> selByGoodsIDAndUseOrgSid(@Param("goodID") String goodID,@Param("useOrgSid") String useOrgSid);
@Select("select * from wms_inventory where goodsID = #{goodsID} and useOrgSid = #{useOrgSid} and warehouseSid = #{warehouseSid}")
List<WmsInventory> selByGoodsIDAndUseOrgSidAndWarehouseSid(@Param("goodID") String goodID,@Param("useOrgSid") String useOrgSid,@Param("warehouseSid") String warehouseSid);
}

52
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml

@ -237,7 +237,7 @@
wi.cost as salesPrice
FROM wms_inventory wi
LEFT JOIN wms_warehouse_area wwa
ON wi.`warehouseRackSid` = wwa.`sid`
ON wi.warehouseRackSid = wwa.sid
<where>
${ew.sqlSegment}
</where>
@ -379,21 +379,21 @@
SELECT wi.*
FROM wms_inventory wi
LEFT JOIN wms_warehouse_info wwi
ON wi.`warehouseSid` = wwi.`sid`
ON wi.warehouseSid = wwi.sid
WHERE wi.count > 0
AND wwi.`useOrgSid` = #{deptSid}
AND wwi.useOrgSid = #{deptSid}
AND wwi.warehouseTypeKey = '01'
AND RIGHT(wi.`goodsID`,2) != '-O'
AND RIGHT(wi.goodsID,2) != '-O'
</select>
<select id="selByDeptSidAndRackSid" resultType="com.yxt.wms.biz.inventory.wmsinventory.WmsInventory">
SELECT wi.*
FROM wms_inventory wi
LEFT JOIN wms_warehouse_info wwi
ON wi.`warehouseSid` = wwi.`sid`
ON wi.warehouseSid = wwi.sid
WHERE wi.count > 0
AND wwi.`useOrgSid` = #{deptSid}
AND RIGHT(wi.`goodsID`,2) != '-O'
AND wwi.useOrgSid = #{deptSid}
AND RIGHT(wi.goodsID,2) != '-O'
AND wwi.warehouseTypeKey = '01'
AND wi.warehouseRackSid in
<foreach item="rackSid" collection="rackSids" open="(" separator="," close=")">
@ -408,15 +408,15 @@
w.supplierSid,
w.supplierName,
wa.sid AS warehouseAreaSid,
wa.`areaName` AS warehouseArea,
wa.areaName AS warehouseArea,
p.sid AS manufactorBillSid
FROM wms_inventory w
LEFT JOIN yxt_pms.pms_purchase_bill p
ON w.manufactorBillNo = p.manufacturersOrderNumber
LEFT JOIN wms_warehouse_rack wr
ON w.`warehouseRackSid` = wr.`sid`
ON w.warehouseRackSid = wr.sid
LEFT JOIN wms_warehouse_area wa
ON wr.`locationSid` = wa.`sid`
ON wr.locationSid = wa.sid
<where>
${ew.sqlSegment}
</where>
@ -424,8 +424,8 @@
<select id="fittingsInventory" resultType="com.yxt.wms.biz.inventory.wmsinventory.FittingsInventoryVo">
SELECT * FROM (
SELECT
so.`name` useOrgName,
s.`name` deptName,
so.name useOrgName,
s.name deptName,
wi.goodsSpuName,
wi.goodsSkuCode,
wi.goodsSkuOwnSpec,
@ -605,10 +605,10 @@
SELECT wi.*
FROM wms_inventory wi
LEFT JOIN wms_warehouse_info wwi
ON wi.`warehouseSid` = wwi.`sid`
ON wi.warehouseSid = wwi.sid
WHERE wi.count > 0
AND wwi.`useOrgSid` = #{deptSid}
AND RIGHT(wi.`goodsID`,2) = '-O'
AND wwi.useOrgSid = #{deptSid}
AND RIGHT(wi.goodsID,2) = '-O'
AND wwi.warehouseTypeKey = '02'
AND wi.warehouseRackSid in
<foreach item="rackSid" collection="rackSids" open="(" separator="," close=")">
@ -620,11 +620,11 @@
SELECT wi.*
FROM wms_inventory wi
LEFT JOIN wms_warehouse_info wwi
ON wi.`warehouseSid` = wwi.`sid`
ON wi.warehouseSid = wwi.sid
WHERE wi.count > 0
AND wwi.`useOrgSid` = #{deptSid}
AND wwi.useOrgSid = #{deptSid}
AND wwi.warehouseTypeKey = '02'
AND RIGHT(wi.`goodsID`,2) = '-O'
AND RIGHT(wi.goodsID,2) = '-O'
</select>
<select id="selbyGoodsId" resultType="com.yxt.wms.biz.inventory.wmsinventory.WmsInventory">
SELECT * FROM wms_inventory WHERE goodsID =#{goodsID}
@ -658,13 +658,13 @@
SELECT * FROM
(SELECT
s.orgSidPath,
so.`name` useOrgName,
s.`name` deptName,
so.name useOrgName,
s.name deptName,
i.goodsSpuName,
i.goodsSkuCode,
i.manufacturerName,
i.supplierName,
IFNULL(SUM(`count`),0) `count`,
IFNULL(SUM(count),0) count,
DATEDIFF(NOW(),(SELECT MIN(wi.firstInDate) FROM wms_inventory as wi WHERE wi.count > 0 and wi.useOrgSid = i.useOrgSid and wi.goodsSkuCode = i.goodsSkuCode and wi.manufacturerSid = i.manufacturerSid and wi.supplierSid = i.supplierSid)) inventoryAge,
date_format ((SELECT MAX(r.createTime) FROM wms_inventory_record as r LEFT JOIN wms_inventory as wi on r.inventorySid = wi.sid WHERE wi.useOrgSid = i.useOrgSid and wi.goodsSkuCode = i.goodsSkuCode and wi.manufacturerSid = i.manufacturerSid and wi.supplierSid = i.supplierSid and r.busTypeValue = '销售出库'),'%Y-%m-%d') salesTime,
DATEDIFF(NOW(),(date_format ((SELECT MAX(r.createTime) FROM wms_inventory_record as r LEFT JOIN wms_inventory as wi on r.inventorySid = wi.sid WHERE wi.useOrgSid = i.useOrgSid and wi.goodsSkuCode = i.goodsSkuCode and wi.manufacturerSid = i.manufacturerSid and wi.supplierSid = i.supplierSid and r.busTypeValue = '销售出库'),'%Y-%m-%d'))) noSalesDays,
@ -704,7 +704,7 @@
SELECT wi.*
FROM wms_inventory wi
LEFT JOIN wms_warehouse_info wwi
ON wi.`warehouseSid` = wwi.`sid`
ON wi.warehouseSid = wwi.sid
WHERE wi.count > 0
AND wwi.useOrgSid = #{deptSid}
AND wwi.warehouseTypeKey = '03'
@ -729,14 +729,14 @@
(SELECT
i.goodsID,
s.orgSidPath,
so.`name` useOrgName,
s.`name` deptName,
so.name useOrgName,
s.name deptName,
i.goodsSpuName,
i.goodsSkuCode,
i.goodsSkuOwnSpec,
i.unit,
IFNULL(SUM(`count`),0) `count`,
IFNULL(i.cost,0) `cost`,
IFNULL(SUM(count),0) count,
IFNULL(i.cost,0) cost,
SUM(IFNULL(i.cost,0) * IFNULL(i.count,0)) costTotal,
(SELECT IFNULL(salesPrice,0) FROM yxt_base.base_goods_sku_extend as sku WHERE sku.sid = i.goodsSkuSid) price,
i.warehouseName,

12
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java

@ -1342,4 +1342,16 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
String count = baseMapper.selCountByGoodsID(goodsID);
return rb.success().setData(count);
}
public ResultBean<List<WmsInventory>> selByGoodsIDAndUseOrgSid(String goodID, String useOrgSid) {
ResultBean rb = ResultBean.fireFail();
List<WmsInventory> wmsInventoryList = baseMapper.selByGoodsIDAndUseOrgSid(goodID,useOrgSid);
return rb.success().setData(wmsInventoryList);
}
public ResultBean<List<WmsInventory>> selByGoodsIDAndUseOrgSidAndWarehouseSid(String goodID, String useOrgSid, String warehouseSid) {
ResultBean rb = ResultBean.fireFail();
List<WmsInventory> wmsInventoryList = baseMapper.selByGoodsIDAndUseOrgSidAndWarehouseSid(goodID,useOrgSid,warehouseSid);
return rb.success().setData(wmsInventoryList);
}
}

Loading…
Cancel
Save