修复删除全部客户,商品销售和商品销售退货出现数据接口错误的BUG

lihaobo
yeqifu 6 years ago
parent edb2ca222b
commit 0dd5bc8992

@ -93,7 +93,8 @@ public class CustomerController {
@RequestMapping("deleteCustomer")
public ResultObj deleteCustomer(Integer id){
try {
customerService.removeById(id);
// customerService.removeById(id);
customerService.deleteCustomerById(id);
return ResultObj.DELETE_SUCCESS;
} catch (Exception e) {
e.printStackTrace();

@ -45,8 +45,8 @@ public class GoodsController {
*/
@RequestMapping("loadAllGoods")
public DataGridView loadAllGoods(GoodsVo goodsVo){
IPage<Goods> page = new Page<>(goodsVo.getPage(),goodsVo.getLimit());
QueryWrapper<Goods> queryWrapper = new QueryWrapper();
IPage<Goods> page = new Page<Goods>(goodsVo.getPage(),goodsVo.getLimit());
QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
queryWrapper.eq(goodsVo.getProviderid()!=null&&goodsVo.getProviderid()!=0,"providerid",goodsVo.getProviderid());
queryWrapper.like(StringUtils.isNotBlank(goodsVo.getGoodsname()),"goodsname",goodsVo.getGoodsname());
queryWrapper.like(StringUtils.isNotBlank(goodsVo.getProductcode()),"productcode",goodsVo.getProductcode());
@ -113,7 +113,7 @@ public class GoodsController {
/**
*
* @param id
* @param id id
* @return
*/
@RequestMapping("deleteGoods")
@ -121,7 +121,8 @@ public class GoodsController {
try {
//删除商品的图片
AppFileUtils.removeFileByPath(goodsimg);
goodsService.removeById(id);
// goodsService.removeById(id);
goodsService.deleteGoodsById(id);
return ResultObj.DELETE_SUCCESS;
} catch (Exception e) {
e.printStackTrace();

@ -15,9 +15,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
/**
@ -85,15 +82,16 @@ public class ProviderController {
}
}
/**
*
* @param id ID
* @param id
* @return
*/
@RequestMapping("deleteProvider")
public ResultObj deleteProvider(Integer id){
try {
providerService.removeById(id);
providerService.deleteProviderById(id);
return ResultObj.DELETE_SUCCESS;
} catch (Exception e) {
e.printStackTrace();
@ -101,25 +99,6 @@ public class ProviderController {
}
}
/**
*
* @param providerVo
* @return
*/
@RequestMapping("batchDeleteProvider")
public ResultObj batchDeleteProvider(ProviderVo providerVo){
try {
Collection<Serializable> idList = new ArrayList<Serializable>();
for (Integer id : providerVo.getIds()) {
idList.add(id);
}
providerService.removeByIds(idList);
return ResultObj.DELETE_SUCCESS;
} catch (Exception e) {
e.printStackTrace();
return ResultObj.DELETE_ERROR;
}
}
/**
*
@ -127,7 +106,7 @@ public class ProviderController {
*/
@RequestMapping("loadAllProviderForSelect")
public DataGridView loadAllProviderForSelect(){
QueryWrapper<Provider> queryWrapper = new QueryWrapper();
QueryWrapper<Provider> queryWrapper = new QueryWrapper<Provider>();
queryWrapper.eq("available", Constast.AVAILABLE_TRUE);
List<Provider> list = providerService.list(queryWrapper);
return new DataGridView(list);

@ -58,7 +58,7 @@ public class SalesbackController {
}
}
/**t
/**
* 退
* @param salesbackVo
* @return

@ -1,7 +1,8 @@
package com.yeqifu.bus.mapper;
import com.yeqifu.bus.entity.Goods;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeqifu.bus.entity.Goods;
import org.apache.ibatis.annotations.Param;
/**
* <p>
@ -13,4 +14,40 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface GoodsMapper extends BaseMapper<Goods> {
/**
* id
* @param id1
*/
void deleteSaleByGoodsId(@Param("goodsid") Integer id1);
/**
* id退
* @param id1
*/
void deleteSaleBackByGoodsId(@Param("goodsid") Integer id1);
/**
* id
* @param id
*/
void deleteInportByGoodsId(@Param("goodsid") Integer id);
/**
* id退
* @param id
*/
void deleteOutportByGoodsId(@Param("goodsid") Integer id);
/**
* id
* @param id id
*/
void deleteSaleByCustomerId(Integer id);
/**
* id退
* @param id id
*/
void deleteSaleBackByCustomerId(Integer id);
}

@ -2,6 +2,7 @@ package com.yeqifu.bus.mapper;
import com.yeqifu.bus.entity.Provider;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
/**
* <p>
@ -13,4 +14,23 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface ProviderMapper extends BaseMapper<Provider> {
/**
* id
* @param id
*/
void deleteGoodsByProviderId(@Param("pid") Integer id);
/**
* id
* @param id
*/
void deleteInportByProviderId(@Param("pid") Integer id);
/**
* id退
* @param id
*/
void deleteOutPortByProviderId(@Param("pid") Integer id);
}

@ -13,4 +13,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface ICustomerService extends IService<Customer> {
/**
* id
* @param id id
*/
void deleteCustomerById(Integer id);
}

@ -13,4 +13,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IGoodsService extends IService<Goods> {
/**
* id
* @param id
*/
void deleteGoodsById(Integer id);
}

@ -13,4 +13,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IProviderService extends IService<Provider> {
/**
* ID
* @param id
*/
void deleteProviderById(Integer id);
}

@ -2,8 +2,10 @@ package com.yeqifu.bus.service.impl;
import com.yeqifu.bus.entity.Customer;
import com.yeqifu.bus.mapper.CustomerMapper;
import com.yeqifu.bus.mapper.GoodsMapper;
import com.yeqifu.bus.service.ICustomerService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -22,6 +24,9 @@ import java.util.Collection;
@Transactional
public class CustomerServiceImpl extends ServiceImpl<CustomerMapper, Customer> implements ICustomerService {
@Autowired
private GoodsMapper goodsMapper;
@Override
public boolean save(Customer entity) {
return super.save(entity);
@ -46,4 +51,16 @@ public class CustomerServiceImpl extends ServiceImpl<CustomerMapper, Customer> i
return super.removeByIds(idList);
}
/**
* id
* @param id id
*/
@Override
public void deleteCustomerById(Integer id) {
//根据客户id删除商品销售
goodsMapper.deleteSaleByCustomerId(id);
//根据客户id删除商品销售退货
goodsMapper.deleteSaleBackByCustomerId(id);
this.removeById(id);
}
}

@ -40,4 +40,18 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
public Goods getById(Serializable id) {
return super.getById(id);
}
@Override
public void deleteGoodsById(Integer id) {
//根据商品id删除商品销售信息
this.getBaseMapper().deleteSaleByGoodsId(id);
//根据商品id删除商品销售退货信息
this.getBaseMapper().deleteSaleBackByGoodsId(id);
//根据商品id删除商品进货信息
this.getBaseMapper().deleteInportByGoodsId(id);
//根据商品id删除商品退货信息
this.getBaseMapper().deleteOutportByGoodsId(id);
//删除商品信息
this.removeById(id);
}
}

@ -1,15 +1,19 @@
package com.yeqifu.bus.service.impl;
import com.yeqifu.bus.entity.Customer;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeqifu.bus.entity.Goods;
import com.yeqifu.bus.entity.Provider;
import com.yeqifu.bus.mapper.GoodsMapper;
import com.yeqifu.bus.mapper.ProviderMapper;
import com.yeqifu.bus.service.IProviderService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.io.Serializable;
import java.util.Collection;
import java.util.List;
/**
* <p>
@ -23,6 +27,9 @@ import java.util.Collection;
@Transactional
public class ProviderServiceImpl extends ServiceImpl<ProviderMapper, Provider> implements IProviderService {
@Autowired
private GoodsMapper goodsMapper;
@Override
public boolean save(Provider entity) {
return super.save(entity);
@ -46,5 +53,32 @@ public class ProviderServiceImpl extends ServiceImpl<ProviderMapper, Provider> i
public boolean removeByIds(Collection<? extends Serializable> idList) {
return super.removeByIds(idList);
}
/**
* id
* @param id id
*/
@Override
public void deleteProviderById(Integer id) {
//根据供应商id查询出商品id
QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
queryWrapper.eq("providerid",id);
List<Goods> goods = goodsMapper.selectList(queryWrapper);
for (Goods good : goods) {
//获取一个商品id
Integer id1 = good.getId();
//根据商品id删除商品销售信息
goodsMapper.deleteSaleByGoodsId(id1);
//根据商品id删除商品销售退货信息
goodsMapper.deleteSaleBackByGoodsId(id1);
}
//根据供应商id删除商品退货信息
this.getBaseMapper().deleteOutPortByProviderId(id);
//根据供应商id删除商品进货信息
this.getBaseMapper().deleteInportByProviderId(id);
//根据供应商id删除商品
this.getBaseMapper().deleteGoodsByProviderId(id);
//删除供应商
this.removeById(id);
}
}

@ -82,7 +82,6 @@ public class CachePool {
CACHE_CONTAINER.put("goods:"+goods.getId(),goods);
}
}

@ -24,7 +24,7 @@ public class AppFileUtils {
public static String UPLOAD_PATH="G:/upload/";
static {
//读取配置文件的存储地址
//通过反射的方式,读取配置文件的存储地址
InputStream stream = AppFileUtils.class.getClassLoader().getResourceAsStream("file.properties");
Properties properties=new Properties();
try {
@ -79,12 +79,12 @@ public class AppFileUtils {
/**
* _temp
* @param goodsimg
* @param goodsImg
* @return
*/
public static String renameFile(String goodsimg) {
File file = new File(UPLOAD_PATH,goodsimg);
String replace = goodsimg.replace("_temp","");
public static String renameFile(String goodsImg) {
File file = new File(UPLOAD_PATH,goodsImg);
String replace = goodsImg.replace("_temp","");
if (file.exists()){
file.renameTo(new File(UPLOAD_PATH,replace));
}

@ -54,5 +54,5 @@ public class Constast {
/**
*
*/
public static final String DEFAULT_IMG_USER="/images/defaultusertitle.jpg";
public static final String DEFAULT_IMG_USER="/images/defaultUserTitle.jpg";
}

@ -41,5 +41,6 @@ public class ResultObj {
public static final ResultObj DELETE_ERROR_NEWS = new ResultObj(Constast.ERROR,"删除用户失败,该用户是其他用户的直属领导,请先修改该用户的下属的直属领导,再进行删除操作");
public static final ResultObj DELETE_QUERY = new ResultObj();
}

@ -44,11 +44,11 @@ public class PermissionController {
*/
@RequestMapping("loadPermissionManagerLeftTreeJson")
public DataGridView loadPermissionManagerLeftTreeJson(PermissionVo permissionVo){
QueryWrapper<Permission> queryWrapper = new QueryWrapper<>();
QueryWrapper<Permission> queryWrapper = new QueryWrapper<Permission>();
queryWrapper.eq("type", Constast.TYPE_MENU);
//查询出所有的权限存放进list中
List<Permission> list = permissionService.list(queryWrapper);
List<TreeNode> treeNodes = new ArrayList<>();
List<TreeNode> treeNodes = new ArrayList<TreeNode>();
//将权限放入treeNodes中组装成json
for (Permission permission : list) {
Boolean open = permission.getOpen()==1?true:false;

@ -54,25 +54,27 @@ public class UserController {
public DataGridView loadAllUser(UserVo userVo){
IPage<User> page = new Page<User>(userVo.getPage(),userVo.getLimit());
QueryWrapper<User> queryWrapper = new QueryWrapper<User>();
queryWrapper.eq(StringUtils.isNotBlank(userVo.getName()),"loginname",userVo.getName()).or().eq(StringUtils.isNotBlank(userVo.getName()),"name",userVo.getName());
queryWrapper.eq(StringUtils.isNotBlank(userVo.getAddress()),"address",userVo.getAddress());
//根据用户登录名称以及用户名称模糊查询用户
queryWrapper.like(StringUtils.isNotBlank(userVo.getName()),"loginname",userVo.getName()).or().eq(StringUtils.isNotBlank(userVo.getName()),"name",userVo.getName());
queryWrapper.like(StringUtils.isNotBlank(userVo.getAddress()),"address",userVo.getAddress());
//查询系统用户
queryWrapper.eq("type", Constast.USER_TYPE_NORMAL);
queryWrapper.eq(userVo.getDeptid()!=null,"deptid",userVo.getDeptid());
queryWrapper.orderByDesc("id");
userService.page(page,queryWrapper);
//将所有用户数据放入list中
List<User> list = page.getRecords();
for (User user : list) {
Integer deptid = user.getDeptid();
if (deptid!=null){
Integer deptId = user.getDeptid();
if (deptId!=null){
//先从缓存中去取,如果缓存中没有就去数据库中取
Dept one = deptService.getById(deptid);
Dept one = deptService.getById(deptId);
//设置user的部门名称
user.setDeptname(one.getName());
}
Integer mgr = user.getMgr();
if (mgr!=null){
if (mgr!=null&&mgr!=0){
User one = userService.getById(mgr);
//设置user的领导名称
user.setLeadername(one.getName());
@ -88,7 +90,7 @@ public class UserController {
@RequestMapping("loadUserMaxOrderNum")
public Map<String,Object> loadUserMaxOrderNum(){
Map<String,Object> map = new HashMap<String,Object>();
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
QueryWrapper<User> queryWrapper = new QueryWrapper<User>();
queryWrapper.orderByDesc("ordernum");
IPage<User> page = new Page<>(1,1);
List<User> list = userService.page(page,queryWrapper).getRecords();
@ -102,13 +104,13 @@ public class UserController {
/**
* ID
* @param deptid
* @param deptId
* @return
*/
@RequestMapping("loadUsersByDeptId")
public DataGridView loadUsersByDeptIp(Integer deptid){
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(deptid!=null,"deptid",deptid);
public DataGridView loadUsersByDeptIp(Integer deptId){
QueryWrapper<User> queryWrapper = new QueryWrapper<User>();
queryWrapper.eq(deptId!=null,"deptid",deptId);
queryWrapper.eq("available",Constast.AVAILABLE_TRUE);
queryWrapper.eq("type",Constast.USER_TYPE_NORMAL);
List<User> list = userService.list(queryWrapper);
@ -122,7 +124,7 @@ public class UserController {
*/
@RequestMapping("changeChineseToPinyin")
public Map<String,Object> changeChineseToPinyin(String username){
Map<String,Object> map = new HashMap<>();
Map<String,Object> map = new HashMap<String, Object>(16);
if (null!=username){
map.put("value", PinyinUtils.getPingYin(username));
}else {

@ -22,6 +22,11 @@ import java.util.List;
@Transactional
public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements IRoleService {
/**
* sys_user_rolesys_role_permission
* @param id id
* @return
*/
@Override
public boolean removeById(Serializable id) {
//根据角色ID删除sys_role_permission表中的数据
@ -33,7 +38,7 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements IR
/**
* IDIDID
* @param roleId
* @param roleId id
* @return
*/
@Override
@ -60,12 +65,11 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements IR
/**
* ID
* @param id
* @param id id
* @return
*/
@Override
public List<Integer> queryUserRoleIdsByUid(Integer id) {
return getBaseMapper().queryUserRoleIdsByUid(id);
}
}

@ -78,7 +78,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
*/
@Override
public Boolean queryMgrByUserId(Integer userId) {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
QueryWrapper<User> queryWrapper = new QueryWrapper<User>();
queryWrapper.eq("mgr",userId);
List<User> users = userMapper.selectList(queryWrapper);
if (null!=users&&users.size()>0){

@ -2,4 +2,35 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeqifu.bus.mapper.GoodsMapper">
<!-- id -->
<delete id="deleteSaleByGoodsId">
delete from bus_sales where goodsid = #{goodsid}
</delete>
<!-- id退 -->
<delete id="deleteSaleBackByGoodsId">
delete from bus_salesback where goodsid = #{goodsid}
</delete>
<!-- id -->
<delete id="deleteInportByGoodsId">
delete from bus_inport where goodsid = #{goodsid}
</delete>
<!-- id退 -->
<delete id="deleteOutportByGoodsId">
delete from bus_outport where goodsid = #{goodsid}
</delete>
<!-- id -->
<delete id="deleteSaleByCustomerId">
delete from bus_sales where customerid = #{customerid}
</delete>
<!-- id退 -->
<delete id="deleteSaleBackByCustomerId">
delete from bus_salesback where customerid = #{customerid}
</delete>
</mapper>

@ -2,4 +2,20 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeqifu.bus.mapper.ProviderMapper">
<!-- id -->
<delete id="deleteGoodsByProviderId">
delete from bus_goods where providerid = #{pid}
</delete>
<!-- id -->
<delete id="deleteInportByProviderId">
delete from bus_inport where providerid = #{pid}
</delete>
<!-- id退 -->
<delete id="deleteOutPortByProviderId">
delete from bus_outport where providerid = #{pid}
</delete>
</mapper>

@ -423,7 +423,7 @@
//删除
function deleteGoods(data) {
layer.confirm('' + data.goodsname + '', {icon: 3, title: ''}, function (index) {
layer.confirm('' + data.goodsname + '退退', {icon: 3, title: ''}, function (index) {
$.post("/goods/deleteGoods", {id: data.id,goodsimg:data.goodsimg},function (res) {
if (res.code == 200) {
tableIns.reload({

@ -63,9 +63,6 @@
<button type="button" lay-event="add" shiro:hasPermission="provider:create" class="layui-btn layui-btn-sm layui-btn-normal layui-btn-radius">
<i class="layui-icon layui-icon-add-1"></i>
</button>
<button type="button" lay-event="deleteBatch" shiro:hasPermission="provider:create" class="layui-btn layui-btn-sm layui-btn-danger layui-btn-radius">
<i class="layui-icon layui-icon-delete"></i>
</button>
</div>
<div id="providerRowBar" style="display: none;">
<button type="button" lay-event="update" shiro:hasPermission="provider:update" class="layui-btn layui-btn-sm layui-btn-radius"><i
@ -310,7 +307,7 @@
//删除
function deleteProvider(data) {
layer.confirm('' + data.providername + '', {icon: 3, title: ''}, function (index) {
layer.confirm('' + data.providername + '退退', {icon: 3, title: ''}, function (index) {
$.post("/provider/deleteProvider", {id: data.id},function (res) {
if (res.code == 200) {
tableIns.reload({
@ -323,39 +320,6 @@
});
}
//批量删除
function batchDeleteProvider() {
//得到选中行
var checkStatus = table.checkStatus('providerTable');
var dataLength = checkStatus.data.length;
if (dataLength>0){
layer.confirm('',{icon: 3,title: ''},function (index) {
//获取选中行数据
var data = checkStatus.data;
var ids = "";
$.each(data,function (index, item) {
if (index==0){
ids+="ids="+item.id;
}else {
ids+="&ids="+item.id;
}
});
$.post("/provider/batchDeleteProvider",ids,function (res) {
if (res.code==200){
//重新刷新表格
tableIns.reload({
where:"",
});
}
layer.msg(res.msg);
});
layer.close(index);
});
}else {
layer.msg("请选中操作行")
}
}
});

@ -158,13 +158,13 @@
<label class="layui-form-label"></label>
<div class="layui-input-block">
<input type="hidden" name="id">
<input type="text" name="number" lay-verify="required" autocomplete="off" class="layui-input input-radius" placeholder="请输入销售数量">
<input type="text" name="number" lay-verify="required|number" autocomplete="off" class="layui-input input-radius" placeholder="请输入销售数量">
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label"></label>
<div class="layui-input-block">
<input type="text" name="saleprice" lay-verify="required" autocomplete="off" class="layui-input input-radius" placeholder="请输入销售价格">
<input type="text" name="saleprice" lay-verify="required|number" autocomplete="off" class="layui-input input-radius" placeholder="请输入销售价格">
</div>
</div>
</div>

@ -273,7 +273,7 @@
//删除
function deletePermission(data) {
layer.confirm('' + data.title + '', {icon: 3, title: ''}, function (index) {
layer.confirm('' + data.title + '', {icon: 3, title: ''}, function (index) {
$.post("/permission/deletePermission", {id: data.id},function (res) {
if (res.code == 200) {
tableIns.reload({

@ -300,7 +300,7 @@
type:1,
content:$("#selectRolePermissionDiv"),
area:['400px','580px'],
title:'给'+data.name+'',
title:''+data.name+'',
btn: ['<span class=layui-icon>&#xe605;</span>','<span class=layui-icon>&#x1006;</span>'],
btnAlign:'c',
yes: function(index, layero){
@ -323,7 +323,7 @@
dtree.render({
elem:"#permissionTree",
url:"/role/initPermissionByRoleId?roleId="+data.id,
//使用layui风格的数据格式
//使用layUI风格的数据格式
dataStyle:"layuiStyle",
//配置data的风格为list
dataFormat:"list",

@ -120,7 +120,7 @@
<div class="layui-inline">
<label class="layui-form-label"></label>
<div class="layui-input-block">
<input type="text" name="hiredate" id="hiredate" placeholder="yyyy-MM-dd HH:mm:ss" autocomplete="off" style="width: 217px" class="layui-input input-radius">
<input type="text" name="hiredate" id="hiredate" lay-verify="required" placeholder="yyyy-MM-dd HH:mm:ss" autocomplete="off" style="width: 217px" class="layui-input input-radius">
</div>
</div>
</div>

Loading…
Cancel
Save