| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- define(['jquery', 'bootstrap', 'backend', 'table', 'form','vue'], function ($, undefined, Backend, Table, Form, Vue) {
- var Controller = {
- index: function () {
- // 初始化表格参数配置
- Table.api.init({
- extend: {
- index_url: 'service/packagecard/index' + location.search,
- add_url: 'service/packagecard/add',
- edit_url: 'service/packagecard/edit',
- del_url: 'service/packagecard/del',
- multi_url: 'service/packagecard/multi',
- import_url: 'service/packagecard/import',
- table: 'service_package_card',
- }
- });
- var table = $("#table");
- // 初始化表格
- table.bootstrapTable({
- url: $.fn.bootstrapTable.defaults.extend.index_url,
- pk: 'id',
- sortName: 'weigh',
- fixedColumns: true,
- fixedRightNumber: 1,
- columns: [
- [
- {checkbox: true},
- {field: 'id', title: __('Id')},
- {field: 'name', title: __('Name'), operate: 'LIKE'},
- {field: 'images', title: __('Images'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.images},
- {field: 'original_price', title: __('Original_price'), operate:'BETWEEN'},
- {field: 'price', title: __('Price'), operate:'BETWEEN'},
- {field: 'info_images', title: __('Info_images'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.images},
- {field: 'flow_images', title: __('Flow_images'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.images},
- {field: 'daynums', title: __('Daynums')},
- {field: 'plus_state', title: __('Plus_state'), searchList: {"0":__('Plus_state 0'),"1":__('Plus_state 1')}, formatter: Table.api.formatter.normal},
-
- {field: 'coupon_state', title: __('Coupon_state'), searchList: {"0":__('Coupon_state 0'),"1":__('Coupon_state 1')}, formatter: Table.api.formatter.normal},
- {field: 'salenums', title: __('Salenums')},
- {field: 'weigh', title: __('Weigh'), operate: false},
- {field: 'status', title: __('Status'), searchList: {"normal":__('Status normal'),"hidden":__('Status hidden')}, formatter: Table.api.formatter.status},
- {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
- {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
- {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,
- buttons: [
- {
- name: 'list',
- text: __('订单列表'),
- title: __('订单列表'),
- classname: 'btn btn-xs btn-danger btn-dialog',
- icon: 'fa fa-list',
- url: function(row){
- return 'service/card/packageorder/index?ordertype=1&package_card_id='+row.id;
- },
- },
- ],
- formatter: Table.api.formatter.operate}
- ]
- ]
- });
- // 为表格绑定事件
- Table.api.bindevent(table);
- },
- add: function () {
-
- let add = new Vue({
- el: '#app',
- data(){
- return {
- info:[]
- }
- },
- watch:{
-
- },
- computed:{
- original_price(){
- let price = 0;
- for(let i=0; i < this.info.length; i++){
- price+=this.info[i].original_price*this.info[i].nums
- }
- return price
- },
- price(){
- let price = 0;
- for(let i=0; i < this.info.length; i++){
- price+=this.info[i].price*this.info[i].nums
- }
- return price
- },
- },
- methods:{
- del(index){
- this.info.splice(index,1)
- },
- goodsSelect(){
- let that = this
- Backend.api.open('service/packagesku/index','选择项目',{
- callback: function(res){
- console.log(res.data)
- let had = false
- for(let i=0; i < that.info.length;i++){
- if(that.info[i].id == res.data.id){
- had = true
- }
- }
- if(had){
- layer.msg("已过滤添加过的信息");
- return
- }
- let data = res.data
- data.nums = 1
- data.goods_sku_id = data.id
- data.original_price = data.price
- data.total_price = data.original_price*data.nums
- that.info.push(data)
- }
- });
- }
- }
- })
- Controller.api.bindevent();
- },
- edit: function () {
- let add = new Vue({
- el: '#app',
- data(){
- return {
- info:Config.goods
- }
- },
- watch:{
- },
- computed:{
- original_price(){
- let price = 0;
- for(let i=0; i < this.info.length; i++){
- price+=this.info[i].original_price*this.info[i].nums
- }
- return price
- },
- price(){
- let price = 0;
- for(let i=0; i < this.info.length; i++){
- price+=this.info[i].price*this.info[i].nums
- }
- return price
- },
- },
-
- methods:{
- del(index){
- this.info.splice(index,1)
- },
- goodsSelect(){
- let that = this
- Backend.api.open('service/packagesku/index','选择项目',{
- callback: function(res){
- console.log(res.data)
- let had = false
- for(let i=0; i < that.info.length;i++){
- if(that.info[i].goods_sku_id == res.data.id){
- had = true
- }
- }
- if(had){
- layer.msg("已过滤添加过的信息");
- return
- }
- let data = res.data
- data.nums = 1
- data.goods_sku_id = data.id
- data.original_price = data.price
- data.total_price = data.original_price*data.nums
- that.info.push(data)
- }
- });
- }
- }
- })
- Controller.api.bindevent();
- },
- api: {
- bindevent: function () {
- Form.api.bindevent($("form[role=form]"));
- }
- }
- };
- return Controller;
- });
|