<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="angular.js"></script>
<script src="angular-route.js"></script>
<script>
var app = angular.module("myApp",['ngRoute']);
//配置路由
app.config(["$routeProvider",function($routeProvider){
$routeProvider
.when("/",{})
.when("/addOrder",{
controller:"addOrderCtrl",
templateUrl:"addOrder.html"
})
.otherwise({redirectTo:"/addOrder"});
}]);
app.controller("myCtrl",function($scope,$location) {
$scope.users = [
{id:1,shop:"ipone4",name:"张三",phone:"151111111",price:4999.00,city:"北京",time:"08-01 10:00",state:"发货"},
{id:2,shop:"小米6",name:"李四",phone:"152222222",price:2999.00,city:"北京",time:"08-02 10:00",state:"发货"},
{id:3,shop:"华为P9",name:"王五",phone:"153333333",price:3999.00,city:"上海",time:"09-03 10:00",state:"已发货"},
{id:4,shop:"OPPO R11",name:"赵六",phone:"154444444",price:4999.00,city:"天津",time:"09-04 10:00",state:"已收货"},
{id:5,shop:"VIVO",name:"周七",phone:"155555555",price:2999.00,city:"重庆",time:"10-04 10:00",state:"已发货"}
];
//定义跳转方法
$scope.goToPath = function(){
$location.path("/addOrder");
}
$scope.startTime = "开始月份";
$scope.endTime = "结束月份";
//过滤时间
$scope.filterTime = function(index){
//获得开始和结束月份
//获取当前订单的时间月份
var time = $scope.users[index].time;
var month = parseInt(time.split("-")[0]);
if($scope.startTime == "开始月份" || $scope.endTime == "结束月份"){
return true;
}else{
var start = parseInt($scope.startTime);
var end = parseInt($scope.endTime);
if(month >=start && month<=end ){
return true;
}else{
return false;
}
}
}
//批量发送
$scope.sendSel=function(){
var userNames=[];
for(index in $scope.users){
if($scope.users[index].stat == true){
userNames.push($scope.users[index].name);
}
}
if(userNames.length>0){
if(confirm("是否发送选中项?")){
for(i in userNames){
var name=userNames[i];
for(i2 in $scope.users){
if($scope.users[i2].name==name){
$scope.users[i2].state = "已发货";
}
}
}
}
}else{
alert("请选择发送的项")
}
}
//全选方法
$scope.selectAll = false;
$scope.selectAllFun = function(){
if($scope.selectAll){
for(index in $scope.users){
$scope.users[index].stat = true;
}
}else{
for(index in $scope.users){
$scope.users[index].stat = false;
}
}
}
//检测是否全选
$scope.checkSelect = function(index){
var temp = 0;
if($scope.users[index].stat == true){
temp++;
}else{
temp--;
}
if(temp == $scope.users.length){
$scope.selectAll = true;
}else{
$scope.selectAll = false;
}
var haha = false;
for(i in $scope.users){
if($scope.users[i].state == true){
}else{
haha = true;
}
}
if(haha){
$scope.selectAll = false;
}else{
$scope.selectAll = true;
}
}
//选择城市查询
$scope.cityTest = function (city,citysize) {
if (citysize != "选择城市"){
var citys = citysize.split("-");
if (citys == city){
return true;
}else{
return false;
}
}else{
return true;
}
};
//选择状态查询
$scope.stateTest = function (state,statesize) {
if (statesize != "选择状态"){
var states = statesize.split("-");
if (states == state){
return true;
}else{
return false;
}
}else{
return true;
}
};
//排序
$scope.rese = false;
$scope.sort1 = function (sort) {
$scope.active = sort;
console.log(sort);
if ($scope.sort == sort) {
$scope.rese = !$scope.rese;
}
else {
$scope.rese = false;
}
$scope.sort = sort;
}
//更改状态
$scope.changeState = function(index){
$scope.users[index].state = "已发货";
}
//更改状态
$scope.chanState = function(index){
$scope.users[index].state = "已收货";
}
});
app.controller("addOrderCtrl",function($scope){
$scope.goodName = "";
$scope.userName = "";
$scope.num = "";
$scope.city = "选择城市";
$scope.li1 = false;
$scope.li2 = false;
$scope.li3 = false;
$scope.li4 = false;
$scope.li5 = false;
$scope.li6 = false;
$scope.li7 = false;
$scope.sub = function(){
//判断商品名是否为空
if($scope.goodName == null || $scope.goodName == ""){
$scope.li1 = true;
}else{
$scope.li1 = false;
//判断商品名是否符合格式
if($scope.goodName.length <= 6 || $scope.goodName.length >= 20){
alert("asf")
$scope.li2 = true;
}else{
$scope.li2 = false;
}
}
//判断用户名是否为空
if($scope.userName == null || $scope.userName == ""){
$scope.li3 = true;
}else{
$scope.li3 = false;
//判断用户名是否符合格式
if($scope.userName.length <= 4 || $scope.userName.length >= 16){
$scope.li4 = true;
}else{
$scope.li4 = false;
}
}
//判断手机号是否为空
if($scope.num == null || $scope.num == ""){
$scope.li5 = true;
}else{
$scope.li5 = false;
//判断手机号是否符合格式
alert($scope.num.length);
if($scope.num.length == 11){
if(isNaN($scope.num)){
$scope.li6 = true;
}else{
$scope.li6 = false;
}
}else{
$scope.li6 = true;
}
}
//判断手机号是否符合格式
if($scope.city == "选择城市"){
$scope.li7 = true;
}else{
$scope.li7 = false;
}
if(!$scope.li1 && !$scope.li2 && !$scope.li3 && !$scope.li4 && !$scope.li5 && !$scope.li6 && !$scope.li7){
//全显示,格式全不正确,才能进来
//获得ID
var idMax = 0;
for(index in $scope.users){
if($scope.users[index].id>idMax){
idMax = $scope.users[index].id;
}
}
//alert("添加");
var date = new Date();
var month = date.getMonth()+1;
var day = date.getDate();
var hours = date.getHours();
var minute = date.getMinutes();
var myTime = month+"-"+day+" "+hours+":"+minute;
var user = {
id:idMax+1,
shop:$scope.goodName,
name:$scope.userName,
phone:$scope.num,
price:2999.00,
city:$scope.city,
time:myTime,
state:"发货"
};
//将订单添加到数据源
$scope.users.push(user);
}else{
//
}
}
});
</script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<center>
<h3>订单页面</h3>
<input ng-model="search" type="text" placeholder="用户名搜索" size="8" />
<input ng-model="iphone" type="text" placeholder="手机号搜索"size="8" />
<select id="city" ng-model="citysize" ng-init="citysize='选择城市'">
<option>选择城市</option>
<option>北京</option>
<option>上海</option>
<option>天津</option>
<option>重庆</option>
</select>
<select id="state" ng-model="statesize" ng-init="statesize='选择状态'">
<option>选择状态</option>
<option>发货</option>
<option>已发货</option>
<option>已收货</option>
</select>
<select ng-model="startTime">
<option>开始月份</option>
<option>01</option>
<option>02</option>
<option>03</option>
<option>04</option>
<option>05</option>
<option>06</option>
<option>07</option>
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>-
<select ng-model="endTime">
<option>结束月份</option>
<option>01</option>
<option>02</option>
<option>03</option>
<option>04</option>
<option>05</option>
<option>06</option>
<option>07</option>
<option>08</option>
<option>09</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select><br /><br />
<button ng-click="goToPath()">新增订单</button>
<button ng-click="sendSel()">批量发货</button><br /><br />
<table border="1" cellspacing="1" cellpadding="10">
<thead>
<tr>
<th><input type="checkbox" ng-model="selectAll" ng-click="selectAllFun()"/></th>
<th>ID<button style="background:#0C800F " ng-click="sort1('id')" ng-class="{active:active=='id'}">排序</button></th>
<th>商品名</th>
<th>用户名</th>
<th>手机号</th>
<th>价格<button style="background:#0C800F" ng-click="sort1('price')" ng-class="{active:active=='price'}">排序</button></th>
<th>城市</th>
<th>下单时间<button style="background:#0C800F" ng-click="sort1('time')" ng-class="{active:active=='time'}">排序</button></th>
<th>状态</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="user in users | filter:{name:search} | filter:{phone:iphone} | orderBy:sort:rese " ng-show="cityTest(user.city,citysize)&&filterTime($index)" ng-if="stateTest(user.state,statesize)">
<td><input type="checkbox" ng-click="checkSelect($index)" ng-model="user.stat"/></td>
<td>{{user.id}}</td>
<td>{{user.shop}}</td>
<td>{{user.name}}</td>
<td>{{user.phone}}</td>
<td>{{user.price | currency:"¥:"}}</td>
<td>{{user.city}}</td>
<td>{{user.time}}</td>
<td>
<span ng-if="user.state == '发货'"><a ng-click="changeState($index)" href="#">{{user.state}}</a></span>
<span ng-if="user.state == '已发货'"><a ng-click="chanState($index)" href="#">{{user.state}}</a></span>
<span ng-if="user.state == '已收货'">{{user.state}}</span>
</td>
</tr>
</tbody>
</table>
</center>
<!-- 添加定点页面 -->
<script type="text/ng-template" id="addOrder.html">
<center>
<h3>新增订单</h3>
商品名:<input type="text" ng-model="goodName" placeholder="6-20个字符"/><br /><br />
用户名:<input type="text" ng-model="userName" placeholder="4-16个字符"/><br /><br />
手机号:<input type="text" ng-model="num" placeholder="4-16个字符"/><br /><br />
城市:<select ng-model="city">
<option>选择城市</option>
<option>北京</option>
<option>上海</option>
<option>天津</option>
<option>重庆</option>
</select><br />
<ul>
<li ng-show="li1">商品不能为空</li>
<li ng-show="li2">商品名必须是6-20个字符</li>
<li ng-show="li3">用户名不能为空</li>
<li ng-show="li4">用户名必须是4-16个字符</li>
<li ng-show="li5">手机号不能为空</li>
<li ng-show="li6">手机号格式不正确</li>
<li ng-show="li7">请选择城市</li>
</ul>
<input ng-click="sub()" type="button" value="提交"/><br />
</center>
</script>
<div ng-view>
</div>
</body>
</html>
商品订单 添加、查询、状态、时间。。
最新推荐文章于 2022-03-29 12:48:20 发布