一般的增删改查

<template>

<div>

     <el-row :gutter="20">

  <el-col :span="6"><div class="grid-content bg-purple">

    Recipe ID :<el-input id="in1" v-model="rname"></el-input> 

    </div></el-col>

  <el-col :span="6"><div class="grid-content bg-purple">

    Site No: <el-input id="in2" v-model="count"></el-input>

    </div></el-col>

    <el-col :span="6"><div class="grid-content bg-purple">

    Owner: <el-input id="in3" v-model="owner"></el-input>

    </div></el-col>

</el-row>

<el-row :gutter="20"  v-loading="loading">

  <el-col :span="6"><div class="grid-content  "></div></el-col>

  <el-col :span="2"><div class="grid-content  ">

    <el-button type="info" @click="createtable">add</el-button>

    </div></el-col>

    <el-col :span="2"><div class="grid-content  ">

    <el-button type="info" @click="querytable">query</el-button>

    </div></el-col>

  <el-col :span="2"><div class="grid-content  ">

    <el-button type="info" v-on:click="clear">clear</el-button>   

    </div></el-col>

</el-row>

<!-- <div v-if="addvisable"> -->

<div>

<el-table id="savetable" 

      :data="tableData"

      style="width: 65%">

      <el-table-column

        label="Recipe Name"

        width="200">

        <template slot-scope="scope">

        <span style="margin-left: 10px">{{ scope.row.RECIPENAME }}</span>

      </template>

      </el-table-column>

      <el-table-column

        label="Site"

        width="100">

        <template slot-scope="scope">

        <span style="margin-left: 10px">{{ scope.row.SITENAME }}</span>

      </template>

      </el-table-column>

       <el-table-column

        label="OWNER"

        width="120">

        <template slot-scope="scope">

        <el-input  placeholder="请输入工号" v-model="scope.row.OWNER"></el-input>

      </template>

      </el-table-column>

      <el-table-column width="200" label="X">

        

        <template slot-scope="scope">

        <el-input  placeholder="请输入X坐标" v-model="scope.row.COORDINATEX"></el-input>

      </template>

      </el-table-column>

      <el-table-column width="200" label="Y">

        <template slot-scope="scope">

        <el-input  placeholder="请输入X坐标" v-model="scope.row.COORDINATEY"></el-input>

      </template>

      </el-table-column>

    </el-table>

    <el-row :gutter="20">

  <el-col :span="6"><div class="grid-content  "></div></el-col>

  <el-col :span="2"><div class="grid-content  ">

    <el-button type="info" @click="savedata">save</el-button>

    </div></el-col>

  <el-col :span="2"><div class="grid-content  ">

    <el-button type="info" v-on:click="clear2">clear</el-button>   

    </div></el-col>

</el-row>

</div>

 

<div>

<!-- <div v-if="queryvisable"> -->

    <el-table id="queryData" 

      :data="queryData"

      style="width: 80%">

      <el-table-column

        label="Recipe Name"

        width="200"

        prop="RECIPENAME">

        

      </el-table-column>

      <el-table-column

        label="Site"

        width="100"

        prop="SITENAME">

      </el-table-column>

      <el-table-column

        label="COORDINATE"

        width="120"

        prop="COORDINATE">

      </el-table-column>

      <el-table-column width="120" label="Owner">

      <template slot-scope="scope">

        <el-input  placeholder="请输入工号" v-model="scope.row.OWNER"></el-input>

      </template>

      </el-table-column>

      <el-table-column width="200" label="Time"

      prop="CREATETIME">

      </el-table-column>

      <el-table-column width="100" label="X">

      <template slot-scope="scope">

        <el-input  placeholder="请输入X坐标" v-model="scope.row.COORDINATEX"></el-input>

      </template>

      </el-table-column>

      <el-table-column width="100" label="Y">

      <template slot-scope="scope">

        <el-input  placeholder="请输入y坐标" v-model="scope.row.COORDINATEY"></el-input>         

      </template>

      </el-table-column>

      <el-table-column label="操作">

      <template slot-scope="scope" v-if="scope.$index+1==queryData.length">

        <el-button

          size="mini"

          type="danger"

          @click="handleDelete(scope.$index, scope.row)">删除</el-button>

          <el-button

          size="mini"

          type="success"

          @click="handleAdd(scope.$index, scope.row)">添加</el-button>

      </template>

    </el-table-column>

    </el-table>

    <el-row :gutter="20">

        <el-col :span="6"><div class="grid-content  "></div></el-col>

        <el-col :span="2"><div class="grid-content  ">

          <el-button type="info" @click="changedata">change</el-button>

          </div></el-col>

      </el-row>

</div>

</div>

 

</template>

<script>

 export default {

   data() {

        return {

          tableData: [],

          count:'',

          rname:'',

          isvisable:false,

          queryData:[],

          loading:false,

          addvisable:false,

          queryvisable:false,

          owner:''

        }

      },

    methods:{

      clear:function(){

          this.rname='';

          this.count='';

      },

      clear2:function()

      {

        let _this=this;

        for(var i=0;i<_this.tableData.length;i++)

        {

          _this.tableData[i]["COORDINATEX"]="";

          _this.tableData[i]["COORDINATEY"]="";

        }

      },

      createtable:function(){

          let _this=this;

 

        let url = this.URL_PREFIX + "/ReqRpt216/checkrecipeisexist";

        var checkvalue=0;

        $.ajax({

                    url: url,

                    type: "post",

                    contentType: "application/x-www-form-urlencoded; ", //默认,表单提交格式

                    dataType: "json",

                    data: {RecipeName:_this.rname} ,

                    success: function (data,status) {

                        if(data=="exist")

                          {

                            alert("该RecipeName已经存在,请重新输入");

                            checkvalue=1;

                          }

                    },

                    error:function (data,status)

                    {

                        alert("系统错误,请重新输入或联系IT");

                    },

                    async: false

            });

 

          if(checkvalue!=0)

          {

            return ;

          }


 

          var reg = /^[1-9]\d*$/;

          if(_this.rname==""||_this.rname==null)

          {

            alert("请先输入RecipeName再查询");

            return;

          }

          if(!reg.test(_this.count))

          {

            alert("Site No 请输入数字");

            return;

          }

          if(_this.owner=="")

          {

            alert("Owner请输入工号");

            return;

          }

          var a=new Array(Number( _this.count));

          for(var i=0;i<Number( _this.count);i++)

          {

            var o=new Object();

            o.RECIPENAME=_this.rname;

            o.SITENAME="Site"+(i+1);

            o.OWNER=_this.owner;

            o.CREATETIME='';

            o.COORDINATEX='';

            o.COORDINATEY='';

            a[i]=o;

          }

          _this.tableData=a;

          _this.addvisable=true;

          _this.queryvisable=false;

      },

      savedata:function(){

        let _this=this;

        if(_this.tableData.length==0)

        {

          alert("请先添加数据再进行保存!");

          return;

        }

        let url = this.URL_PREFIX + "/ReqRpt216/savecoordinate";

        var date=new Date();

 

          var year=date.getFullYear();

          var month=date.getMonth();

          var day=date.getDate();

 

            var hour=date.getHours();

            var minute=date.getMinutes();

            var second=date.getSeconds();

 

            if (hour<10) {

              hour='0'+hour;

            }

            if (minute<10) {

              minute='0'+minute;

            }

            if(second<10)

            {

              second='0'+second;

            }

            var nowtime=year+'-'+(month+1)+'-'+day+' '+hour+':'+minute+':'+second;

        for(var i=0;i<_this.tableData.length;i++)

        {

          if(_this.tableData[i]["OWNER"]==""||_this.tableData[i]["COORDINATEX"]==""||_this.tableData[i]["COORDINATEY"]=="")

          {

            alert("有栏位的值未输入");

            return;

          }

          _this.tableData[i]["CREATETIME"]=nowtime;

          _this.tableData[i]["COORDINATEX"]=Number(_this.tableData[i]["COORDINATEX"]);

          _this.tableData[i]["COORDINATEY"]=Number(_this.tableData[i]["COORDINATEY"]);

        }

        

 

        let savedata={savelist:_this.tableData};

          $.ajax({

                    url: url,

                    type: "post",

                    contentType: "application/x-www-form-urlencoded; ", //默认,表单提交格式

                    dataType: "json",

                    data: savedata ,

                    success: function (data,status) {

                        if(data=="exist")

                          {

                            alert("该RecipeName已经存在,请重新输入");

                          }else

                          {

                            alert("添加成功");

                          }

                        

                    },

                    error:function (data,status)

                    {

                        alert("系统错误,请重新输入或联系IT");

                    },

                    async: false

            });

      },

      querytable:function(){

        let _this=this;

       if(_this.rname=="")

       {

         alert("请先输入RecipeName再查询");

         return;

       }

 

      _this.loading=true;

        let url = this.URL_PREFIX + "/ReqRpt216/querycoordinate";

        $.ajax({

                    url: url,

                    type: "post",

                    contentType: "application/x-www-form-urlencoded; ", //默认,表单提交格式

                    dataType: "json",

                    data: {RecipeName:_this.rname} ,

                    success: function (data,status) {

                        if(data=='nodata')

                        {

                          alert("该RecipeName没有Coordinate,请先添加再查询");

                        }else

                        {

                          _this.queryData=JSON.parse(data);

                          _this.queryvisable=true;

                        }

                    },

                    error:function (data,status)

                    {

                        alert("系统错误,请重新输入或联系IT");

                    },

                    async: false

            });

         _this.addvisable=false;

      _this.loading=false;

      },

      changedata:function(){

 

            var date=new Date();

 

          var year=date.getFullYear();

          var month=date.getMonth();

          var day=date.getDate();

 

            var hour=date.getHours();

            var minute=date.getMinutes();

            var second=date.getSeconds();

 

            if (hour<10) {

              hour='0'+hour;

            }

            if (minute<10) {

              minute='0'+minute;

            }

            if(second<10)

            {

              second='0'+second;

            }

            var nowtime=year+'-'+(month+1)+'-'+day+' '+hour+':'+minute+':'+second;

 

            let _this=this;

            let url = this.URL_PREFIX + "/ReqRpt216/changecoordinate";

            var needchangearray=new Array();

            //queryData

            for(var i=0;i<_this.queryData.length;i++)

            {

              if((_this.queryData[i]["COORDINATEX"]==null&&_this.queryData[i]["COORDINATEY"]!=""&&_this.queryData[i]["COORDINATEY"]!=null)||(_this.queryData[i]["COORDINATEY"]==null&&(_this.queryData[i]["COORDINATEX"]!=""&&_this.queryData[i]["COORDINATEX"]!=null)) )

              {

                  alert("x坐标和y坐标同时需要输入或者不输入");

                        return;

              }

              if((_this.queryData[i]["COORDINATEX"]==""&&_this.queryData[i]["COORDINATEY"]!=""&&_this.queryData[i]["COORDINATEY"]!=null)||(_this.queryData[i]["COORDINATEY"]==""&&(_this.queryData[i]["COORDINATEX"]!=""&&_this.queryData[i]["COORDINATEX"]!=null)) )

              {

                  alert("x坐标和y坐标同时需要输入或者不输入");

                        return;

              }

              if(_this.queryData[i]["COORDINATEX"]!=""&&_this.queryData[i]["COORDINATEX"]!=null)

              {

                _this.queryData[i]["CREATETIME"]=nowtime;

                needchangearray.push(_this.queryData[i]);

              }

              if(_this.queryData[i]["COORDINATE"]=="")

              {

                if(!(_this.queryData[i]["COORDINATEX"]!=""&&_this.queryData[i]["COORDINATEX"]!=null))

                {

                   alert("新增的Site需要输入xy坐标");

                        return;

                }

                if(!(_this.queryData[i]["COORDINATEX"]!=""&&_this.queryData[i]["COORDINATEX"]!=null))

                {

                   alert("新增的Site需要输入xy坐标");

                        return;

                }

              }

            }

            if(needchangearray.length==0)

            {

              alert("请先输入想要修改的值,再修改!");

              return;

            }

 

            let changedata={changelist:needchangearray};

            $.ajax({

                    url: url,

                    type: "post",

                    contentType: "application/x-www-form-urlencoded; ", //默认,表单提交格式

                    dataType: "json",

                    data: changedata ,

                    success: function (data,status) {

                        if(data=="success")

                        {

                          alert("修改成功");

                        }else

                        {

                          alert("操作失败");

                        }

                    },

                    error:function (data,status)

                    {

                        alert("系统错误,请重新输入或联系IT");

                    }

            });

 

      },

      handleDelete:function(index, row) {

        let _this=this;

         let url = this.URL_PREFIX + "/ReqRpt216/deletecoordinate";

         $.ajax({

                    url: url,

                    type: "post",

                    contentType: "application/x-www-form-urlencoded; ", //默认,表单提交格式

                    dataType: "json",

                    data: {RECIPENAME:row.RECIPENAME,SITENAME:row.SITENAME} ,

                    success: function (data,status) {

                        if(data=='success')

                        {

                          alert("删除成功");

                        }else

                        {

                         alert("操作失败");

                        }

                    },

                    error:function (data,status)

                    {

                        alert("系统错误,请重新操作或联系IT");

                    },

                    async: false

            });

            for(var i=_this.queryData.length;i>0;i--)

            {

              if(_this.queryData[i-1]["SITENAME"]==row.SITENAME)

              {

                _this.queryData.splice(i-1,1);

                return;

              }

            }

      },

      handleAdd:function(index, row){

          let _this=this;

          var o=JSON.parse(JSON.stringify(_this.queryData[Number(index)]));

          o.SITENAME="Site"+(index+2);

          console.log(o.SITENAME);

          o.COORDINATE="";

          _this.queryData.push(o);

 

      }

      

    }

}

 

</script>

<style>

 .el-row {

    margin-bottom: 10px;

   

  }

  .el-col {

    border-radius: 4px;

  }

  .bg-purple-dark {

    background: #99a9bf;

  }

  .bg-purple {

    background: #d3dce6;

  }

  .bg-purple-light {

    background: #e5e9f2;

  }

  .grid-content {

    border-radius: 4px;

    min-height: 36px;

    margin-top:5px;

    padding-top: 5px; 

  }

  .row-bg {

    padding: 5px 0;

    background-color: #f9fafc;

  }

</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值