文档章节

初始化库存

落落酱
 落落酱
发布于 2016/09/29 10:22
字数 413
阅读 83
收藏 1

思路

  • 先来理一下思路哈~~~
  • 大概就是,新增商品之后,要设置初始库存,添加商品部分已经写好,我只负责初始化库存,以及将没有入库的商品添加进去
  • 进行判断,如果已经入库,则不需要重复添加,只添加不存在的
  • 输入数字设置为初始库存,没有初始则设置为0

前端页面:

<div class="xuanz">
                        <div class="xuanz_in_in">
                            <span class="cx" ng-click="initInventory()">初始化库存&nbsp;<span class="caret"></span></span>
                        </div>
                        <input class="in_l" type="text" placeholder="请输入初始化库存数" ng-model="realinventory"/>
                        <span class="searchbutton in_r" ng-click="search()"></span>
                    </div>

controller.js

scope.initInventory = function(){
		console.log(scope.realinventory);
		productService.initInventory(scope.realinventory,function(data){

			//window.location.href=ctx+'/product/index#/inventory/0';
			scope.list();
		});
	}

service.js

initInventory:function(realinventory,callback){
			$http({
				method: "POST",
				url: ctx + "/productinventory/insertprotoproinventory",
				data:{"realinventory":realinventory}
			}).success(function (data, status) {
				callback(data);
			});
		}

controller:

    /*
    * 将Product信息添加至ProductInventory
    * 显示所有
    * */
    @RequestMapping(value = "insertprotoproinventory",method = RequestMethod.POST)
    @ResponseBody
    public Result insertProtoProInventory(@RequestBody ProductInventory productInventory){
        String appid = (String) SecurityUtils.getSubject().getSession().getAttribute(IConstants.APPIDSESSION);
        if(appid!=null){
            productInventory.setAppid(appid);
        }
        ShiroDbRealm.ShiroUser user = getCurrentUser();
        if(Commons.isNull(user)){
            return new Result(Result.Status.ERROR,null);
        }
        Administrator admin = administratorService.queryById(user.getId());

        if(Commons.isNull(admin) || Commons.isNull(admin.getType())){
            return new Result(Result.Status.ERROR,null);
        }
        if (admin.getType() == 3) {
            productInventory.setSupplierid(admin.getId());
        } else if (admin.getType() == 4) {
            if (!Commons.isNull(admin.getSupplierid())) {
                productInventory.setSupplierid(Long.valueOf(admin.getSupplierid()));
            } else {
                return new Result(Result.Status.ERROR, null);
            }
        }
        if (productInventory.getRealinventory()==null){
            productInventory.setRealinventory(0);
        }else {
            productInventory.getRealinventory();
        }
//        productInventory.setRealinventory(realinventory);
        productInventoryService.insertProductInventory(productInventory);
        return new Result(Result.Status.OK);
    }

mapper

<select id="selectByProid" resultMap="BaseResultMap" parameterType="java.lang.Long">
        select
        <include refid="Base_Column_List"/>
        from
        <include refid="table"/>
        where proid=#{proid}
    </select>

serviceImpl

@Override
    public void insertProductInventory(ProductInventory productInventory) {
//        Map<String,Object> map = new HashMap<>();
//        map.put("appid", productInventory.getAppid());
//        map.put("appid", productInventory.getAppid());
        ProductQuery query = new ProductQuery();
        query.setAppid(productInventory.getAppid());
        query.setSupplier(productInventory.getSupplierid());
        List<Product> productList = productService.queryList(query);
        //判断数据库是否已经存在数据
        for (Product product : productList) {
            long proid = product.getId();
            if (this.selectByProid(proid) == null) {
                productInventory.setId(null);
                productInventory.setAppid(product.getAppid());
                productInventory.setProid(product.getId());
                productInventory.setProseries(product.getProductseries());
                productInventory.setSupplierid(product.getSupplier());
                productInventory.setFatherid(null);
                productInventory.setUserid(null);
                productInventory.setCreatetime(new Date());
                productInventory.setRealinventory(productInventory.getRealinventory());
                productInventory.setSupplierinventory(productInventory.getRealinventory());
                productInventory.setChannelinventory(0);
                productInventory.setTicketinventory(0);
                productInventoryDao.insert(productInventory);
            }else { continue; }
        }
    }

DaoImpl

@Override
    public ProductInventory selectByProid(long proid) {
        return sqlSessionTemplate.selectOne(getSqlName("selectByProid"),proid);
    }

© 著作权归作者所有

共有 人打赏支持
落落酱

落落酱

粉丝 312
博文 15
码字总数 11024
作品 0
武汉
程序员
私信 提问
加载中

评论(2)

落落酱
落落酱

引用来自“天元1”的评论

写个存储过程多好

欸……不太会写存储过程
天元1
写个存储过程多好
关于CRM库存初始化的一点小总结

日前,有客户在使用CRM管理库存的过程中反馈了一个关于库存台账的bug(姑且称为bug吧)。例如:12月份通过进货单,采购了10台笔记本。完成产品入库。那么笔记本库存台账: 期初库存数量为0、期间...

ssdcrm
2014/12/15
0
0
设置金蝶kis记账王会计科目的教程

完成新建账套工作之后,金蝶KIS记账王进入初始化设置界面,需要录入的初始资料包括币别、会计科目初始数据和明细科目。下文着重讲解如何设置会计科目,在初始化界面点击“会计科目”,进入“...

石沉大海
2016/12/07
24
0
amazon的零售

1.我还是希望你我都可以收到amazon的 策略上,还是以套件为主,我会再准备一些套件过去。 基本都是由套件组成,面向对象也基本是零售客户,就是帮别人配好 你就类似是个零售业务员,我帮你选...

Nicholas-倪
2017/03/02
1
0
浅谈synchronized、wait、notify和notifyAll

一、概念解读 synchronized:同步锁,可修饰类、方法、代码块; wait:使当前线程进入等待状态,直到锁定对象被唤醒(notify、notifyAll),然后当前线程进入就绪状态;可指定最大等待时间,...

叫我宫城大人
2017/10/20
0
0
数据库开发 - 事务单元作业

问题 1(100分)有一个在线交易电商平台,有两张表,分别是库存表和订单表,如下: 现在买家XiaoMing在该平台购买bag一个,需要同时在库存表中对bag库存记录减一,同时在订单表中生成该订单的...

抢小孩糖吃
2016/10/08
21
0

没有更多内容

加载失败,请刷新页面

加载更多

C++ vector和list的区别

1.vector数据结构 vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。 因此能高效的进行随机存取,时间复杂度为o(1); 但因为内存空间是连续的,所以在进行插入和删除操作时,会造...

shzwork
今天
3
0
Spring之invokeBeanFactoryPostProcessors详解

Spring的refresh的invokeBeanFactoryPostProcessors,就是调用所有注册的、原始的BeanFactoryPostProcessor。 相关源码 public static void invokeBeanFactoryPostProcessors(Configu......

cregu
昨天
4
0
ibmcom/db2express-c_docker官方使用文档

(DEPRECIATED) Please check DB2 Developer-C Edition for the replacement. What is IBM DB2 Express-C ? ``IBM DB2 Express-C``` is the no-charge community edition of DB2 server, a si......

BG2KNT
昨天
3
0
Ubuntu 18.04.2 LTS nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic)

平台:Ubuntu 18.04.2 LTS nvidia-docker2 版本:2.0.3 错误描述:在安装nvidia-docker2的时候报dpkg依赖错误 nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic) 先看一下依......

Pulsar-V
昨天
4
0
学习笔记1-goland结构体(struct)

写在前面:若有侵权,请发邮件by.su@qq.com告知。 转载者告知:如果本文被转载,但凡涉及到侵权相关事宜,转载者需负责。请知悉! 本文永久更新地址:https://my.oschina.net/bysu/blog/3036...

不最醉不龟归
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部