更新了表单样式

This commit is contained in:
weipengfei 2023-12-13 18:30:45 +08:00
parent 339d96f174
commit 883df22b42
10 changed files with 2378 additions and 2055 deletions

View File

@ -1,11 +1,11 @@
{
"hash": "8ba23d55",
"browserHash": "9b7bcd37",
"hash": "e0ca0843",
"browserHash": "6115931f",
"optimized": {
"uview-plus": {
"src": "../../uview-plus/index.js",
"file": "uview-plus.js",
"fileHash": "5cac3687",
"fileHash": "fbfa4a11",
"needsInterop": false
}
},

234
node_modules/.vite/deps/uview-plus.js generated vendored
View File

@ -1,4 +1,4 @@
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/mixin/mixin.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/mixin/mixin.js
var mixin_default = {
// 定义每个组件都可能需要用到的外部样式以及类名
props: {
@ -129,10 +129,10 @@ var mixin_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/mixin/mpMixin.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/mixin/mpMixin.js
var mpMixin_default = {};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/utils.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/utils.js
var { toString } = Object.prototype;
function isArray(val) {
return toString.call(val) === "[object Array]";
@ -188,7 +188,7 @@ function isUndefined(val) {
return typeof val === "undefined";
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/helpers/buildURL.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/helpers/buildURL.js
function encode(val) {
return encodeURIComponent(val).replace(/%40/gi, "@").replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]");
}
@ -231,17 +231,17 @@ function buildURL(url2, params) {
return url2;
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/helpers/isAbsoluteURL.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/helpers/isAbsoluteURL.js
function isAbsoluteURL(url2) {
return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url2);
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/helpers/combineURLs.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/helpers/combineURLs.js
function combineURLs(baseURL, relativeURL) {
return relativeURL ? `${baseURL.replace(/\/+$/, "")}/${relativeURL.replace(/^\/+/, "")}` : baseURL;
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/buildFullPath.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/buildFullPath.js
function buildFullPath(baseURL, requestedURL) {
if (baseURL && !isAbsoluteURL(requestedURL)) {
return combineURLs(baseURL, requestedURL);
@ -249,7 +249,7 @@ function buildFullPath(baseURL, requestedURL) {
return requestedURL;
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/settle.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/settle.js
function settle(resolve, reject, response) {
const { validateStatus: validateStatus2 } = response.config;
const status = response.statusCode;
@ -260,7 +260,7 @@ function settle(resolve, reject, response) {
}
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/adapters/index.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/adapters/index.js
var mergeKeys = (keys, config2) => {
const config = {};
keys.forEach((prop) => {
@ -323,10 +323,10 @@ var adapters_default = (config) => new Promise((resolve, reject) => {
}
});
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/dispatchRequest.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/dispatchRequest.js
var dispatchRequest_default = (config) => adapters_default(config);
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/InterceptorManager.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/InterceptorManager.js
function InterceptorManager() {
this.handlers = [];
}
@ -351,7 +351,7 @@ InterceptorManager.prototype.forEach = function forEach2(fn) {
};
var InterceptorManager_default = InterceptorManager;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/mergeConfig.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/mergeConfig.js
var mergeKeys2 = (keys, globalsConfig, config2) => {
const config = {};
keys.forEach((prop) => {
@ -413,7 +413,7 @@ var mergeConfig_default = (globalsConfig, config2 = {}) => {
return config;
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/defaults.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/defaults.js
var defaults_default = {
baseURL: "",
header: {},
@ -428,7 +428,7 @@ var defaults_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/utils/clone.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/utils/clone.js
var clone = function() {
"use strict";
function _instanceof(obj, type) {
@ -625,7 +625,7 @@ var clone = function() {
}();
var clone_default = clone;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/Request.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/core/Request.js
var Request = class {
/**
* @param {Object} arg - 全局配置
@ -763,10 +763,10 @@ var Request = class {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/index.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/luch-request/index.js
var luch_request_default = Request;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/util/route.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/util/route.js
var Router = class {
constructor() {
this.config = {
@ -866,7 +866,7 @@ var Router = class {
};
var route_default = new Router().route;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/colorGradient.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/colorGradient.js
function colorGradient(startColor = "rgb(0, 0, 0)", endColor = "rgb(255, 255, 255)", step = 10) {
const startRGB = hexToRgb(startColor, false);
const startR = startRGB[0];
@ -978,7 +978,7 @@ var colorGradient_default = {
colorToRgba
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/test.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/test.js
function email(value) {
return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(value);
}
@ -1152,7 +1152,7 @@ var test_default = {
string
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/debounce.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/debounce.js
var timeout = null;
function debounce(func2, wait = 500, immediate = false) {
if (timeout !== null)
@ -1172,7 +1172,7 @@ function debounce(func2, wait = 500, immediate = false) {
}
var debounce_default = debounce;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/throttle.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/throttle.js
var timer;
var flag;
function throttle(func2, wait = 500, immediate = true) {
@ -1194,7 +1194,7 @@ function throttle(func2, wait = 500, immediate = true) {
}
var throttle_default = throttle;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/digit.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/digit.js
var _boundaryCheckingState = true;
function strip(num, precision = 15) {
return +parseFloat(Number(num).toPrecision(precision));
@ -1258,7 +1258,7 @@ function round(num, ratio) {
return result;
}
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/index.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/index.js
function range2(min = 0, max = 0, value = 0) {
return Math.max(min, Math.min(max, Number(value)));
}
@ -1732,7 +1732,7 @@ var function_default = {
setConfig
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/config.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/config.js
var version = "3";
if (true) {
console.log(`
@ -1767,7 +1767,7 @@ var config_default = {
unit: "px"
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/actionSheet.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/actionSheet.js
var actionSheet_default = {
// action-sheet组件
actionSheet: {
@ -1785,7 +1785,7 @@ var actionSheet_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/album.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/album.js
var album_default = {
// album 组件
album: {
@ -1803,7 +1803,7 @@ var album_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/alert.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/alert.js
var alert_default = {
// alert警告组件
alert: {
@ -1818,7 +1818,7 @@ var alert_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/avatar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/avatar.js
var avatar_default = {
// avatar 组件
avatar: {
@ -1839,7 +1839,7 @@ var avatar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/avatarGroup.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/avatarGroup.js
var avatarGroup_default = {
// avatarGroup 组件
avatarGroup: {
@ -1855,7 +1855,7 @@ var avatarGroup_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/backtop.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/backtop.js
var backtop_default = {
// backtop组件
backtop: {
@ -1875,7 +1875,7 @@ var backtop_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/badge.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/badge.js
var badge_default = {
// 徽标数组件
badge: {
@ -1895,7 +1895,7 @@ var badge_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/button.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/button.js
var button_default = {
// button组件
button: {
@ -1930,7 +1930,7 @@ var button_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/calendar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/calendar.js
var calendar_default = {
// calendar 组件
calendar: {
@ -1967,7 +1967,7 @@ var calendar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/carKeyboard.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/carKeyboard.js
var carKeyboard_default = {
// 车牌号键盘
carKeyboard: {
@ -1975,7 +1975,7 @@ var carKeyboard_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/cell.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/cell.js
var cell_default = {
// cell组件的props
cell: {
@ -2003,7 +2003,7 @@ var cell_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/cellGroup.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/cellGroup.js
var cellGroup_default = {
// cell-group组件的props
cellGroup: {
@ -2013,7 +2013,7 @@ var cellGroup_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/checkbox.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/checkbox.js
var checkbox_default = {
// checkbox组件
checkbox: {
@ -2033,7 +2033,7 @@ var checkbox_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/checkboxGroup.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/checkboxGroup.js
var checkboxGroup_default = {
// checkbox-group组件
checkboxGroup: {
@ -2055,7 +2055,7 @@ var checkboxGroup_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/circleProgress.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/circleProgress.js
var circleProgress_default = {
// circleProgress 组件
circleProgress: {
@ -2063,7 +2063,7 @@ var circleProgress_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/code.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/code.js
var code_default = {
// code 组件
code: {
@ -2076,7 +2076,7 @@ var code_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/codeInput.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/codeInput.js
var codeInput_default = {
// codeInput 组件
codeInput: {
@ -2098,7 +2098,7 @@ var codeInput_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/col.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/col.js
var col_default = {
// col 组件
col: {
@ -2110,7 +2110,7 @@ var col_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/collapse.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/collapse.js
var collapse_default = {
// collapse 组件
collapse: {
@ -2120,7 +2120,7 @@ var collapse_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/collapseItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/collapseItem.js
var collapseItem_default = {
// collapseItem 组件
collapseItem: {
@ -2138,7 +2138,7 @@ var collapseItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/columnNotice.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/columnNotice.js
var columnNotice_default = {
// columnNotice 组件
columnNotice: {
@ -2155,7 +2155,7 @@ var columnNotice_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/countDown.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/countDown.js
var countDown_default = {
// u-count-down 计时器组件
countDown: {
@ -2166,7 +2166,7 @@ var countDown_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/countTo.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/countTo.js
var countTo_default = {
// countTo 组件
countTo: {
@ -2184,7 +2184,7 @@ var countTo_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/datetimePicker.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/datetimePicker.js
var datetimePicker_default = {
// datetimePicker 组件
datetimePicker: {
@ -2213,7 +2213,7 @@ var datetimePicker_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/divider.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/divider.js
var divider_default = {
// divider组件
divider: {
@ -2228,7 +2228,7 @@ var divider_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/empty.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/empty.js
var empty_default = {
// empty组件
empty: {
@ -2246,7 +2246,7 @@ var empty_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/form.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/form.js
var form_default = {
// form 组件
form: {
@ -2261,7 +2261,7 @@ var form_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/formItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/formItem.js
var formItem_default = {
// formItem 组件
formItem: {
@ -2276,7 +2276,7 @@ var formItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/gap.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/gap.js
var gap_default = {
// gap组件
gap: {
@ -2288,7 +2288,7 @@ var gap_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/grid.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/grid.js
var grid_default = {
// grid组件
grid: {
@ -2298,7 +2298,7 @@ var grid_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/gridItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/gridItem.js
var gridItem_default = {
// grid-item组件
gridItem: {
@ -2307,7 +2307,7 @@ var gridItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/icon.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/icon.js
var {
color
} = config_default;
@ -2334,7 +2334,7 @@ var icon_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/image.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/image.js
var image_default = {
// image组件
image: {
@ -2357,7 +2357,7 @@ var image_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/indexAnchor.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/indexAnchor.js
var indexAnchor_default = {
// indexAnchor 组件
indexAnchor: {
@ -2369,7 +2369,7 @@ var indexAnchor_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/indexList.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/indexList.js
var indexList_default = {
// indexList 组件
indexList: {
@ -2381,7 +2381,7 @@ var indexList_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/input.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/input.js
var input_default = {
// index 组件
input: {
@ -2422,7 +2422,7 @@ var input_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/keyboard.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/keyboard.js
var keyboard_default = {
// 键盘组件
keyboard: {
@ -2445,7 +2445,7 @@ var keyboard_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/line.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/line.js
var line_default = {
// line组件
line: {
@ -2458,7 +2458,7 @@ var line_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/lineProgress.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/lineProgress.js
var lineProgress_default = {
// lineProgress 组件
lineProgress: {
@ -2470,7 +2470,7 @@ var lineProgress_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/link.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/link.js
var {
color: color2
} = config_default;
@ -2487,7 +2487,7 @@ var link_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/list.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/list.js
var list_default = {
// list 组件
list: {
@ -2508,7 +2508,7 @@ var list_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/listItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/listItem.js
var listItem_default = {
// listItem 组件
listItem: {
@ -2516,7 +2516,7 @@ var listItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/loadingIcon.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/loadingIcon.js
var {
color: color3
} = config_default;
@ -2537,7 +2537,7 @@ var loadingIcon_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/loadingPage.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/loadingPage.js
var loadingPage_default = {
// loading-page组件
loadingPage: {
@ -2553,7 +2553,7 @@ var loadingPage_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/loadmore.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/loadmore.js
var loadmore_default = {
// loadmore 组件
loadmore: {
@ -2578,7 +2578,7 @@ var loadmore_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/modal.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/modal.js
var modal_default = {
// modal 组件
modal: {
@ -2601,7 +2601,7 @@ var modal_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/color.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/color.js
var color4 = {
primary: "#3c9cff",
info: "#909399",
@ -2617,7 +2617,7 @@ var color4 = {
};
var color_default = color4;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/navbar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/navbar.js
var navbar_default = {
// navbar 组件
navbar: {
@ -2640,7 +2640,7 @@ var navbar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/noNetwork.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/noNetwork.js
var noNetwork_default = {
// noNetwork
noNetwork: {
@ -2650,7 +2650,7 @@ var noNetwork_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/noticeBar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/noticeBar.js
var noticeBar_default = {
// noticeBar
noticeBar: {
@ -2670,7 +2670,7 @@ var noticeBar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/notify.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/notify.js
var notify_default = {
// notify组件
notify: {
@ -2685,7 +2685,7 @@ var notify_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/numberBox.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/numberBox.js
var numberBox_default = {
// 步进器组件
numberBox: {
@ -2713,7 +2713,7 @@ var numberBox_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/numberKeyboard.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/numberKeyboard.js
var numberKeyboard_default = {
// 数字键盘
numberKeyboard: {
@ -2723,7 +2723,7 @@ var numberKeyboard_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/overlay.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/overlay.js
var overlay_default = {
// overlay组件
overlay: {
@ -2734,7 +2734,7 @@ var overlay_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/parse.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/parse.js
var parse_default = {
// parse
parse: {
@ -2749,7 +2749,7 @@ var parse_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/picker.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/picker.js
var picker_default = {
// picker
picker: {
@ -2771,7 +2771,7 @@ var picker_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/popup.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/popup.js
var popup_default = {
// popup组件
popup: {
@ -2794,7 +2794,7 @@ var popup_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/radio.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/radio.js
var radio_default = {
// radio组件
radio: {
@ -2814,7 +2814,7 @@ var radio_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/radioGroup.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/radioGroup.js
var radioGroup_default = {
// radio-group组件
radioGroup: {
@ -2837,7 +2837,7 @@ var radioGroup_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/rate.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/rate.js
var rate_default = {
// rate组件
rate: {
@ -2856,7 +2856,7 @@ var rate_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/readMore.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/readMore.js
var readMore_default = {
// readMore
readMore: {
@ -2871,7 +2871,7 @@ var readMore_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/row.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/row.js
var row_default = {
// row
row: {
@ -2881,7 +2881,7 @@ var row_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/rowNotice.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/rowNotice.js
var rowNotice_default = {
// rowNotice
rowNotice: {
@ -2895,7 +2895,7 @@ var rowNotice_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/scrollList.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/scrollList.js
var scrollList_default = {
// scrollList
scrollList: {
@ -2908,7 +2908,7 @@ var scrollList_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/search.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/search.js
var search_default = {
// search
search: {
@ -2938,7 +2938,7 @@ var search_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/section.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/section.js
var section_default = {
// u-section组件
section: {
@ -2955,7 +2955,7 @@ var section_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/skeleton.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/skeleton.js
var skeleton_default = {
// skeleton
skeleton: {
@ -2973,7 +2973,7 @@ var skeleton_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/slider.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/slider.js
var slider_default = {
// slider组件
slider: {
@ -2992,7 +2992,7 @@ var slider_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/statusBar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/statusBar.js
var statusBar_default = {
// statusBar
statusBar: {
@ -3000,7 +3000,7 @@ var statusBar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/steps.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/steps.js
var steps_default = {
// steps组件
steps: {
@ -3014,7 +3014,7 @@ var steps_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/stepsItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/stepsItem.js
var stepsItem_default = {
// steps-item组件
stepsItem: {
@ -3025,7 +3025,7 @@ var stepsItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/sticky.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/sticky.js
var sticky_default = {
// sticky组件
sticky: {
@ -3038,7 +3038,7 @@ var sticky_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/subsection.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/subsection.js
var subsection_default = {
// subsection组件
subsection: {
@ -3054,7 +3054,7 @@ var subsection_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swipeAction.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swipeAction.js
var swipeAction_default = {
// swipe-action组件
swipeAction: {
@ -3062,7 +3062,7 @@ var swipeAction_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swipeActionItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swipeActionItem.js
var swipeActionItem_default = {
// swipeActionItem 组件
swipeActionItem: {
@ -3076,7 +3076,7 @@ var swipeActionItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swiper.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swiper.js
var swiper_default = {
// swiper 组件
swiper: {
@ -3107,7 +3107,7 @@ var swiper_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swipterIndicator.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/swipterIndicator.js
var swipterIndicator_default = {
// swiperIndicator 组件
swiperIndicator: {
@ -3119,7 +3119,7 @@ var swipterIndicator_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/switch.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/switch.js
var switch_default = {
// switch
switch: {
@ -3136,7 +3136,7 @@ var switch_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tabbar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tabbar.js
var tabbar_default = {
// tabbar
tabbar: {
@ -3151,7 +3151,7 @@ var tabbar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tabbarItem.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tabbarItem.js
var tabbarItem_default = {
//
tabbarItem: {
@ -3164,7 +3164,7 @@ var tabbarItem_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tabs.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tabs.js
var tabs_default = {
//
tabs: {
@ -3189,7 +3189,7 @@ var tabs_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tag.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tag.js
var tag_default = {
// tag 组件
tag: {
@ -3211,7 +3211,7 @@ var tag_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/text.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/text.js
var text_default = {
// text 组件
text: {
@ -3241,7 +3241,7 @@ var text_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/textarea.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/textarea.js
var textarea_default = {
// textarea 组件
textarea: {
@ -3270,7 +3270,7 @@ var textarea_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/toast.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/toast.js
var toast_default = {
// toast组件
toast: {
@ -3293,7 +3293,7 @@ var toast_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/toolbar.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/toolbar.js
var toolbar_default = {
// toolbar 组件
toolbar: {
@ -3306,7 +3306,7 @@ var toolbar_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tooltip.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/tooltip.js
var tooltip_default = {
// tooltip 组件
tooltip: {
@ -3324,7 +3324,7 @@ var tooltip_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/transition.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/transition.js
var transition_default = {
// transition动画组件的props
transition: {
@ -3335,7 +3335,7 @@ var transition_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props/upload.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props/upload.js
var upload_default = {
// upload组件
upload: {
@ -3364,7 +3364,7 @@ var upload_default = {
}
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/props.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/props.js
var {
color: color5
} = config_default;
@ -3459,7 +3459,7 @@ var props_default = {
...upload_default
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/config/zIndex.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/config/zIndex.js
var zIndex_default = {
toast: 10090,
noNetwork: 10080,
@ -3472,13 +3472,13 @@ var zIndex_default = {
indexListSticky: 965
};
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/libs/function/platform.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/libs/function/platform.js
var platform = "none";
platform = "vue3";
platform = "h5";
var platform_default = platform;
// ../../../../../books/apps/LiHai/TraceabilityAPP/node_modules/uview-plus/index.js
// ../../../../里海数字乡村/TraceabilityAPP/node_modules/uview-plus/index.js
var pleaseSetTranspileDependencies = {};
var babelTest = pleaseSetTranspileDependencies == null ? void 0 : pleaseSetTranspileDependencies.test;
var $u = {

View File

@ -2,77 +2,79 @@
<view class="content">
<view class="card">
<u-form labelPosition="top" labelWidth='100' :model="data.formData" ref="form1">
<!-- <u-form-item label="姓名" prop="name"><u-input v-model="data.formData.name" /></u-form-item>
<u-form-item label="简介" prop="intro"><u-input v-model="data.formData.intro" /></u-form-item> -->
<u-form-item label="土地名称" prop="title" borderBottom ref='item1' required>
<up-input placeholder="请输入土地名称" border="surround" v-model="data.formData.title"></up-input>
</u-form-item>
<u-form-item label="土地面积" prop="area" borderBottom required>
<up-input placeholder="请输入土地面积" border="surround" v-model="data.formData.area"></up-input>
</u-form-item>
<u-form-item label="所在省份" prop="province_code" borderBottom required @click="isshow1">
<up-input placeholder="请选择所在省份" border="surround" v-model="province_name" readonly
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="所在城市" prop="city_code" borderBottom required @click="isshow2">
<up-input placeholder="请选择所在城市" border="surround" v-model="city_name" readonly
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="所在区县" prop="county_code" borderBottom required @click="isshow3">
<up-input placeholder="请选择所在区县" border="surround" v-model="county_name" readonly
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="土地详细地址" prop="town_code" borderBottom required>
<u-input placeholder="请输入土地详细地址" border="surround" v-model="data.formData.address">
<template #suffix>
<u-icon name="map-fill" size="28" @click="location"></u-icon>
</template>
</u-input>
</u-form-item>
<u-form-item label="土地负责人" prop="master_name" borderBottom required>
<up-input placeholder="请输入土地负责人名称" border="surround" v-model="data.formData.master_name"></up-input>
</u-form-item>
<u-form-item label="负责人电话" prop="master_phone" borderBottom required>
<up-input placeholder="请输入负责人电话" type="number" border="surround"
v-model="data.formData.master_phone"></up-input>
</u-form-item>
<up-form labelWidth='100' :model="data.formData" ref="form1">
<!-- <up-form-item label="姓名" prop="name"><u-input v-model="data.formData.name" /></up-form-item>
<up-form-item label="简介" prop="intro"><u-input v-model="data.formData.intro" /></up-form-item> -->
<view class="c-title">土地信息</view>
<view class="c-box">
<up-form-item label="土地名称" prop="title" borderBottom required>
<up-input input-align="right" placeholder="请输入土地名称" border="none" v-model="data.formData.title"></up-input>
</up-form-item>
<up-form-item label="土地面积" prop="area" borderBottom required>
<up-input input-align="right" placeholder="请输入土地面积" border="none" v-model="data.formData.area"></up-input>
</up-form-item>
<up-form-item label="土地负责人" prop="master_name" borderBottom required>
<up-input input-align="right" placeholder="请输入土地负责人名称" border="none" v-model="data.formData.master_name"></up-input>
</up-form-item>
<up-form-item label="负责人电话" prop="master_phone" borderBottom required>
<up-input input-align="right" placeholder="请输入负责人电话" type="number" border="none"
v-model="data.formData.master_phone"></up-input>
</up-form-item>
</view>
<view class="c-title">地址信息</view>
<view class="c-box">
<up-form-item label="所在省份" prop="province_code" borderBottom required @click="isshow1">
<up-input input-align="right" placeholder="请选择所在省份" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" border="none" v-model="province_name" readonly
style="pointer-events: none;"></up-input>
</up-form-item>
<up-form-item label="所在城市" prop="city_code" borderBottom required @click="isshow2">
<up-input input-align="right" placeholder="请选择所在城市" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" border="none" v-model="city_name" readonly
style="pointer-events: none;"></up-input>
</up-form-item>
<up-form-item label="所在区县" prop="county_code" borderBottom required @click="isshow3">
<up-input input-align="right" placeholder="请选择所在区县" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" border="none" v-model="county_name" readonly
style="pointer-events: none;"></up-input>
</up-form-item>
<up-form-item label="土地详细地址" prop="town_code" borderBottom required>
<up-input input-align="right" placeholder="请输入土地详细地址" suffixIcon="map" suffix-icon-style="color: #b6b6b6;" border="none" v-model="data.formData.address">
</up-input>
</up-form-item>
</view>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
土地图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;"
@click="delimg(i)"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
<view class="c-title">土地图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;"
@click="delimg(i)"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
</u-form>
</up-form>
<u-action-sheet :show="show" keyName="name" closeOnClickOverlay :actions="columns" title="请选择"
@close="show = false" @select="leavaType1">
@ -92,7 +94,7 @@
<u-action-sheet :show="show5" keyName="name" :actions="columns5" title="请选择" @close="show5 = false"
@select="leavaType6">
</u-action-sheet>
<u-button @click="submit">提交</u-button>
<u-button class="btn" @click="submit">提交</u-button>
</view>
</view>
</template>
@ -432,9 +434,54 @@
</script>
<style lang="scss">
page{
background-color: #f7fffc;
}
.card{
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
.c-title{
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
&:before{
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
.c-box{
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.c-box-p{
padding: 20rpx;
}
.btn{
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.card-li-tit {
position: relative;
span {
position: absolute;
left: -9px;
@ -480,7 +527,6 @@
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
margin-bottom: 100rpx;
.carime-icon {
position: absolute;

View File

@ -432,7 +432,7 @@
justify-content: space-between;
}
.card-li-tit {
.card-li {
margin-bottom: 20rpx;
}

View File

@ -2,83 +2,92 @@
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelPosition="top" labelWidth='130' :model="formData" :rules="rules" ref="form">
<u-form-item label="除虫剂种类" prop="kind" borderBottom ref='item1' required>
<up-input placeholder="请输入除虫剂种类" :disabled="mode=='detail'" border="surround"
v-model="formData.kind"></up-input>
</u-form-item>
<u-form-item label="除虫剂品牌" prop="breed" borderBottom required>
<up-input placeholder="请输入除虫剂品牌" :disabled="mode=='detail'" border="surround"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="除虫剂用量(升)" prop="dosage" borderBottom required>
<up-input placeholder="请输入除虫剂用量" type='number' border="surround" :disabled="mode=='detail'"
v-model="formData.dosage"></up-input>
</u-form-item>
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u--form labelWidth='130' :model="formData" :rules="rules" ref="form">
<view class="c-title">除虫信息</view>
<view class="c-box">
<u-form-item label="除虫剂种类" prop="kind" borderBottom ref='item1' required>
<up-input input-align="right" placeholder="请输入除虫剂种类" :disabled="mode=='detail'" border="none"
v-model="formData.kind"></up-input>
</u-form-item>
<u-form-item label="除虫剂品牌" prop="breed" borderBottom required>
<up-input input-align="right" placeholder="请输入除虫剂品牌" :disabled="mode=='detail'" border="none"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="除虫剂用量(升)" prop="dosage" borderBottom required>
<up-input input-align="right" placeholder="请输入除虫剂用量" type='number' border="none" :disabled="mode=='detail'"
v-model="formData.dosage"></up-input>
</u-form-item>
<u-form-item label="作业面积(亩)" prop="area" borderBottom required>
<up-input input-align="right" placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="none"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人员" prop="user" borderBottom required>
<up-input input-align="right" placeholder="请输入参与人姓名" :disabled="mode=='detail'" type="txt" border="none"
v-model="formData.user"></up-input>
</u-form-item>
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<u-form-item label="作业面积(亩)" prop="area" borderBottom required>
<up-input placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="surround"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人" prop="user" borderBottom required>
<up-input placeholder="请输入参与人" :disabled="mode=='detail'" type="txt" border="surround"
v-model="formData.user"></up-input>
</u-form-item>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
除虫图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"
@click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
<view class="c-title">除虫图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"
@click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
<u-form-item label="备注" prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
<view class="c-title">备注信息</view>
<view class="c-box" style="padding: 0 20rpx;">
<u-form-item prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
</u--form>
<view>
@ -90,13 +99,7 @@
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
</view>
</view>
<view class="confirm" v-if="mode=='add'">
<view class="confirm-btn" style="color: white;background-color: #0AA565;" @click="addFn">
完成添加
</view>
<u-button class="btn" v-if="mode=='add'" @click="addFn">完成添加</u-button>
</view>
@ -384,93 +387,139 @@
</script>
<style lang='scss' scoped>
.content {
padding-bottom: 100rpx;
}
page {
background-color: #f7fffc;
}
.tit {
display: flex;
justify-content: space-between;
}
.card {
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
.card-li-tit {
position: relative;
.c-title {
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
&:before {
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
margin-bottom: 20rpx;
}
.c-box {
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.c-box-p {
padding: 20rpx;
}
.up-img {
width: 341.71rpx
}
.btn {
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.tit {
display: flex;
justify-content: space-between;
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.card-li {
position: relative;
margin-bottom: 0;
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
.up-img {
width: 341.71rpx
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
</style>

View File

@ -1,482 +1,530 @@
<template>
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelPosition="top" labelWidth='100' :model="formData" :rules="rules" ref="form">
<u-form-item label="肥料种类" prop="kind" borderBottom ref='item1' required>
<up-input placeholder="请输入肥料种类" :disabled="mode=='detail'" border="surround"
v-model="formData.kind"></up-input>
</u-form-item>
<u-form-item label="肥料品牌" prop="breed" borderBottom required>
<up-input placeholder="请输入肥料品牌" :disabled="mode=='detail'" border="surround"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="肥料用量(斤)" prop="dosage" borderBottom required>
<up-input placeholder="请输入肥料用量" border="surround" type='number' :disabled="mode=='detail'"
v-model="formData.dosage"></up-input>
</u-form-item>
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelWidth='100' :model="formData" :rules="rules" ref="form">
<view class="c-title">施肥信息</view>
<view class="c-box">
<u-form-item label="肥料种类" prop="kind" borderBottom ref='item1' required>
<up-input input-align="right" placeholder="请输入肥料种类" :disabled="mode=='detail'" border="none"
v-model="formData.kind"></up-input>
</u-form-item>
<u-form-item label="肥料品牌" prop="breed" borderBottom required>
<up-input input-align="right" placeholder="请输入肥料品牌" :disabled="mode=='detail'" border="none"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="肥料用量(斤)" prop="dosage" borderBottom required>
<up-input input-align="right" placeholder="请输入肥料用量" border="none" type='number' :disabled="mode=='detail'"
v-model="formData.dosage"></up-input>
</u-form-item>
<u-form-item label="作业面积(亩)" prop="area" borderBottom required>
<up-input input-align="right" placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="none"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人员" prop="user" borderBottom required>
<up-input input-align="right" placeholder="请输入参与人姓名" :disabled="mode=='detail'" type="txt" border="none"
v-model="formData.user"></up-input>
</u-form-item><view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
</view>
<view class="card-li">
<view class="c-title">施肥图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<u-form-item label="作业面积(亩)" prop="area" borderBottom required>
<up-input placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="surround"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人" prop="user" borderBottom required>
<up-input placeholder="请输入参与人" :disabled="mode=='detail'" type="txt" border="surround"
v-model="formData.user"></up-input>
</u-form-item>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
施肥图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx" @click="perviewFn(item)"></u-image>
</view>
</view>
</view>
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"
@click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<u-form-item label="备注" prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
<view class="c-title">备注信息</view>
<view class="c-box" style="padding: 0 20rpx;">
<u-form-item prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
</u--form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" />
</u--form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" />
<uni-calendar ref="calendar1" :showMonth="true" :lunar="true" :insert="false"
@confirm="dateConfirmfn1" /> -->
<u-datetime-picker :show="show1" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show1=false"></u-datetime-picker>
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
<u-datetime-picker :show="show1" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show1=false"></u-datetime-picker>
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
</view>
</view>
</view>
<view class="confirm" v-if="mode=='add'">
<view class="confirm-btn" style="color: white;background-color: #0AA565;" @click="addFn">
完成添加
</view>
<u-button class="btn" v-if="mode=='add'" @click="addFn">完成添加</u-button>
</view>
</view>
</view>
</view>
</template>
<script setup>
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady
} from '@dcloudio/uni-app';
import {
addaction,
plantdetail
} from '@/api/api.js'
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady
} from '@dcloudio/uni-app';
import {
addaction,
plantdetail
} from '@/api/api.js'
const pic = reactive([]);
const calendar = ref(null)
const calendar1 = ref(null)
const form = ref(null)
const task_id = ref('');
const value1 = ref(Date.now());
const show1 = ref(false);
const show2 = ref(false);
const dataobj = reactive({});
const openDate = () => {
// calendar.value.open()
show1.value = true
}
const openDate1 = () => {
// calendar1.value.open()
show2.value = true
}
// console.log()
const formData = reactive({
kind: "",
breed: "",
dosage: "",
start_date: "",
dosage: "",
end_date: "",
})
const pic = reactive([]);
const calendar = ref(null)
const calendar1 = ref(null)
const form = ref(null)
const task_id = ref('');
const value1 = ref(Date.now());
const show1 = ref(false);
const show2 = ref(false);
const dataobj = reactive({});
const openDate = () => {
// calendar.value.open()
show1.value = true
}
const openDate1 = () => {
// calendar1.value.open()
show2.value = true
}
// console.log()
const formData = reactive({
kind: "",
breed: "",
dosage: "",
start_date: "",
dosage: "",
end_date: "",
})
const dateConfirmfn = (e) => {
formData.start_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show1.value = false
}
const dateConfirmfn1 = (e) => {
formData.end_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show2.value = false
}
const rules = ref({
'kind': {
type: 'string',
required: true,
message: '请填写肥料种类',
trigger: ['blur', 'change']
},
'breed': {
type: 'string',
required: true,
message: '请填写肥料品牌',
trigger: ['blur', 'change']
},
'dosage': {
type: 'string',
required: true,
message: '请填写肥料用量',
trigger: ['blur', 'change']
},
'start_date': {
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
},
'end_date': {
type: 'string',
required: true,
message: '请填写结束日期',
trigger: ['blur', 'change']
},
'area': {
type: 'string',
required: true,
message: '请填写土地面积',
trigger: ['blur', 'change']
},
'user': {
type: 'string',
required: true,
message: '请填写参与人',
trigger: ['blur', 'change']
}
// ,
// 'remark': {
// type: 'string',
// required: true,
// message: '',
// trigger: ['blur', 'change']
// },
})
onReady(() => {
form.value.setRules(rules);
const dateConfirmfn = (e) => {
formData.start_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show1.value = false
}
const dateConfirmfn1 = (e) => {
formData.end_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show2.value = false
}
const rules = ref({
'kind': {
type: 'string',
required: true,
message: '请填写肥料种类',
trigger: ['blur', 'change']
},
'breed': {
type: 'string',
required: true,
message: '请填写肥料品牌',
trigger: ['blur', 'change']
},
'dosage': {
type: 'string',
required: true,
message: '请填写肥料用量',
trigger: ['blur', 'change']
},
'start_date': {
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
},
'end_date': {
type: 'string',
required: true,
message: '请填写结束日期',
trigger: ['blur', 'change']
},
'area': {
type: 'string',
required: true,
message: '请填写土地面积',
trigger: ['blur', 'change']
},
'user': {
type: 'string',
required: true,
message: '请填写参与人',
trigger: ['blur', 'change']
}
// ,
// 'remark': {
// type: 'string',
// required: true,
// message: '',
// trigger: ['blur', 'change']
// },
})
onReady(() => {
form.value.setRules(rules);
});
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
//
const updateImgFn = async () => {
});
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
//
const updateImgFn = async () => {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
pic.push(res.data.url)
pic.push(res.data.url)
console.log(pic)
uni.$u.toast('上传成功')
console.log(pic)
uni.$u.toast('上传成功')
}
}
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
const navgo = (url) => {
uni.navigateTo({
url
})
}
const navgo = (url) => {
uni.navigateTo({
url
})
}
const addFn = () => {
form.value.validate().then(res => {
// console.log(res)
if (res) {
if (formData.area > dataobj.area) {
uni.$u.toast('作业面积不能超过种植面积')
return
}
formData.pic = pic
const addFn = () => {
form.value.validate().then(res => {
// console.log(res)
if (res) {
if (formData.area > dataobj.area) {
uni.$u.toast('作业面积不能超过种植面积')
return
}
formData.pic = pic
let data1 = {
plant_id: task_id.value,
type: 1,
detail: JSON.stringify(formData)
};
let data1 = {
plant_id: task_id.value,
type: 1,
detail: JSON.stringify(formData)
};
if (formData.pic.length == 0) {
if (formData.pic.length == 0) {
uni.$u.toast('请上传图片')
return
}
let endTime = new Date(formData.end_date)
let startTime = new Date(formData.start_date)
let plantTime = new Date(dataobj.plant_date)
console.log(startTime<plantTime,endTime<plantTime)
if(startTime<plantTime ){
uni.$u.toast("施肥时间必须超过种植的时间");
return
}
if(endTime<plantTime){
uni.$u.toast("施肥时间必须超过种植的时间");
return
}
if (endTime < startTime) {
uni.$u.toast("结束时间不能小于开始时间");
return
} else if (startTime > endTime) {
uni.$u.toast("开始时间不能大于结束时间");
return
} else {
console.log("开始时间和结束时间合法");
}
uni.$u.toast('请上传图片')
return
}
let endTime = new Date(formData.end_date)
let startTime = new Date(formData.start_date)
let plantTime = new Date(dataobj.plant_date)
console.log(startTime < plantTime, endTime < plantTime)
if (startTime < plantTime) {
uni.$u.toast("施肥时间必须超过种植的时间");
return
}
if (endTime < plantTime) {
uni.$u.toast("施肥时间必须超过种植的时间");
return
}
if (endTime < startTime) {
uni.$u.toast("结束时间不能小于开始时间");
return
} else if (startTime > endTime) {
uni.$u.toast("开始时间不能大于结束时间");
return
} else {
console.log("开始时间和结束时间合法");
}
console.log('表单通过');
//
console.log('表单通过');
addaction(data1).then((res) => {
// console.log(res)
if (res.code == 1) {
uni.$u.toast(res.msg)
uni.navigateBack({
delta: 1
})
}
})
// uni.$u.toast('')
}
//
}).catch((err) => {
console.log(err)
})
addaction(data1).then((res) => {
// console.log(res)
if (res.code == 1) {
uni.$u.toast(res.msg)
uni.navigateBack({
delta: 1
})
}
})
// uni.$u.toast('')
}
}).catch((err) => {
console.log(err)
})
}
//
const perviewFn = (url) => {
uni.previewImage({
urls: [url]
})
}
//
const delimg = (i) => {
pic.splice(i, 1);
}
const getlist = () => {
plantdetail({
plant_id: task_id.value
}).then((res) => {
if (res.code == 1) {
// console.log(res)
Object.assign(dataobj, res.data)
}
});
};
const mode = ref('add')
}
//
const perviewFn = (url) => {
uni.previewImage({
urls: [url]
})
}
//
const delimg = (i) => {
pic.splice(i, 1);
}
const getlist = () => {
plantdetail({
plant_id: task_id.value
}).then((res) => {
if (res.code == 1) {
// console.log(res)
Object.assign(dataobj, res.data)
}
});
};
const mode = ref('add')
onLoad((options) => {
onLoad((options) => {
if (options.task) {
let data = options.task ? JSON.parse(decodeURIComponent(options.task)) : null;
// console.log(data, data.detail)
Object.assign(formData, data.detail);
pic.splice(0, pic.length, ...data.detail.pic);
if (options.task) {
let data = options.task ? JSON.parse(decodeURIComponent(options.task)) : null;
// console.log(data, data.detail)
Object.assign(formData, data.detail);
pic.splice(0, pic.length, ...data.detail.pic);
mode.value = 'detail'
uni.setNavigationBarTitle({
title: '施肥详情'
})
mode.value = 'detail'
uni.setNavigationBarTitle({
title: '施肥详情'
})
// formData=data.detail
// formData=data.detail
} else {
task_id.value = options.id
}
} else {
task_id.value = options.id
}
getlist()
getlist()
})
})
</script>
<style lang='scss' scoped>
.content {
padding-bottom: 100rpx;
}
page {
background-color: #f7fffc;
.tit {
display: flex;
justify-content: space-between;
}
}
.card-li-tit {
position: relative;
.card {
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
.c-title {
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
margin-bottom: 20rpx;
}
&:before {
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.c-box {
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.up-img {
width: 341.71rpx
}
.c-box-p {
padding: 20rpx;
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.btn {
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.tit {
display: flex;
justify-content: space-between;
}
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
.card-li {
position: relative;
margin-bottom: 0;
}
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
}
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.up-img {
width: 341.71rpx
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
</style>

View File

@ -2,65 +2,70 @@
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelPosition="top" labelWidth='100' :model="formData" :rules="rules" ref="form">
<u--form labelWidth='100' :model="formData" :rules="rules" ref="form">
<!-- <u-form-item label="作业地块" prop="formData.breed" borderBottom required>
<up-input placeholder="请输入作业地块" :disabled="mode=='detail'" border="surround"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="作业面积" prop="formData.breed" borderBottom required>
<up-input placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="surround"
v-model="formData.breed"></up-input>
</u-form-item> -->
<u-form-item label="参与人" prop="user" borderBottom required>
<up-input placeholder="请输入参与人" :disabled="mode=='detail'" type="txt" border="surround"
v-model="formData.user"></up-input>
</u-form-item>
<view class="c-title">收获信息</view>
<view class="c-box">
<!-- <u-form-item label="作业地块" prop="formData.breed" borderBottom required>
<up-input input-align="right" placeholder="请输入作业地块" :disabled="mode=='detail'" border="none"
v-model="formData.breed"></up-input>
</u-form-item> -->
<u-form-item label="参与人员" prop="user" borderBottom required>
<up-input input-align="right" placeholder="请输入参与人姓名" :disabled="mode=='detail'" type="txt" border="none"
v-model="formData.user"></up-input>
</u-form-item>
<u-form-item label="作业面积" prop="formData.breed" borderBottom required>
<up-input input-align="right" placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="none"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="收获日期" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
收获图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx" @click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
<view class="c-title">收获图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx" @click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
<u-form-item label="备注" prop="remark" borderBottom >
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
<view class="c-title">备注信息</view>
<view class="c-box" style="padding: 0 20rpx;">
<u-form-item prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
</u--form>
</view>
<view class="confirm" v-if="mode=='add'">
<view class="confirm-btn" style="color: white;background-color: #0AA565;" @click="addFn">
完成添加
</view>
<u-button class="btn" v-if="mode=='add'" @click="addFn">完成添加</u-button>
</view>
@ -91,7 +96,8 @@
const formData = reactive({
user: "",
remark: "",
pic: []
pic: [],
start_date: ''
})
const dateConfirmfn = (e) => {
console.log(e)
@ -232,93 +238,139 @@
</script>
<style lang='scss' scoped>
.content {
padding-bottom: 100rpx;
}
page {
background-color: #f7fffc;
}
.tit {
display: flex;
justify-content: space-between;
}
.card {
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
.card-li-tit {
position: relative;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
margin-bottom: 20rpx;
}
.c-title {
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
&:before {
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
.up-img {
width: 341.71rpx
}
.c-box {
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.c-box-p {
padding: 20rpx;
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.btn {
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
.tit {
display: flex;
justify-content: space-between;
}
}
.card-li {
position: relative;
margin-bottom: 0;
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.up-img {
width: 341.71rpx
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
</style>

View File

@ -1,474 +1,520 @@
<template>
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelPosition="top" labelWidth='100' :model="formData" :rules="rules" ref="form">
<u-form-item label="灌溉方式" prop="type" borderBottom required @click="showggai">
<!-- <uni-data-select v-model="formData.type" :disabled="mode=='detail'"
:localdata="range"></uni-data-select> -->
<up-input placeholder="请选择灌溉方式" readonly border="surround" v-model="formDatatype"
style="pointer-events: none;"></up-input>
</u-form-item>
<!-- 灌溉 -->
<view class="content">
<view class="card">
<u--form labelWidth='100' :model="formData" :rules="rules" ref="form">
<view class="c-title">灌溉信息</view>
<view class="c-box">
<u-form-item label="灌溉方式" prop="type" borderBottom required @click="showggai">
<!-- <uni-data-select v-model="formData.type" :disabled="mode=='detail'"
:localdata="range"></uni-data-select> -->
<up-input input-align="right" placeholder="请选择灌溉方式" readonly border="none" v-model="formDatatype"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="灌溉面积(亩)" prop="area" borderBottom required>
<up-input input-align="right" placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="none"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人员" prop="user" borderBottom required>
<up-input input-align="right" placeholder="请输入参与人姓名" :disabled="mode=='detail'" type="txt" border="none"
v-model="formData.user"></up-input>
</u-form-item>
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down"
suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
</view>
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<u-form-item label="灌溉面积(亩)" prop="area" borderBottom required>
<up-input placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="surround"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人" prop="user" borderBottom required>
<up-input placeholder="请输入参与人" :disabled="mode=='detail'" type="txt" border="surround"
v-model="formData.user"></up-input>
</u-form-item>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
灌溉图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"
@click="perviewFn(item)"></u-image>
</view>
</view>
</view>
<view class="card-li">
<view class="c-title">灌溉图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx" @click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
<view class="c-title">备注信息</view>
<view class="c-box" style="padding: 0 20rpx;">
<u-form-item prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
<u-form-item label="备注" prop="remark" borderBottom >
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</u--form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" />
</u--form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" />
<uni-calendar ref="calendar1" :showMonth="true" :lunar="true" :insert="false"
@confirm="dateConfirmfn1" /> -->
<u-datetime-picker :show="show1" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show1=false"></u-datetime-picker>
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
<u-action-sheet :show="showgg" :actions="range" title="请选择灌溉方式" @close="showgg = false"
@select="ggSelect">
</u-action-sheet>
</view>
</view>
<u-datetime-picker :show="show1" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show1=false"></u-datetime-picker>
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
<u-action-sheet :show="showgg" :actions="range" title="请选择灌溉方式" @close="showgg = false" @select="ggSelect">
</u-action-sheet>
</view>
<u-button class="btn" v-if="mode=='add'" @click="addFn">完成添加</u-button>
</view>
<view class="confirm" v-if="mode=='add'">
<view class="confirm-btn" style="color: white;background-color: #0AA565;" @click="addFn">
完成添加
</view>
</view>
</view>
</view>
</template>
<script setup>
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady,
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady,
} from "@dcloudio/uni-app"
} from "@dcloudio/uni-app"
import {
addaction,
plantdetail
} from '@/api/api.js'
const range = reactive([{
value: 1,
name: "喷灌"
},
{
value: 2,
name: "滴灌"
},
{
value: 3,
name: "沟灌"
},
])
const task_id = ref('');
const pic = reactive([]);
const calendar = ref(null)
const calendar1 = ref(null)
const formDatatype = ref('')
const showgg = ref(false)
const form = ref(null)
const value1 = ref(Date.now());
const show1 = ref(false);
const show2 = ref(false);
const dataobj = reactive({})
const openDate = () => {
// calendar.value.open()
show1.value = true
}
const openDate1 = () => {
// calendar1.value.open()
show2.value = true
}
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
// console.log()
const formData = reactive({
type: "",
import {
addaction,
plantdetail
} from '@/api/api.js'
const range = reactive([{
value: 1,
name: "喷灌"
},
{
value: 2,
name: "滴灌"
},
{
value: 3,
name: "沟灌"
},
])
const task_id = ref('');
const pic = reactive([]);
const calendar = ref(null)
const calendar1 = ref(null)
const formDatatype = ref('')
const showgg = ref(false)
const form = ref(null)
const value1 = ref(Date.now());
const show1 = ref(false);
const show2 = ref(false);
const dataobj = reactive({})
const openDate = () => {
// calendar.value.open()
show1.value = true
}
const openDate1 = () => {
// calendar1.value.open()
show2.value = true
}
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
// console.log()
const formData = reactive({
type: "",
})
})
//
//
const ggSelect = (e) => {
formDatatype.value = e.name
formData.type = e.value
}
const ggSelect = (e) => {
formDatatype.value = e.name
formData.type = e.value
}
//
const showggai = () => {
showgg.value = true
}
//
const showggai = () => {
showgg.value = true
}
//
const dateConfirmfn = (e) => {
formData.start_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show1.value = false
}
const dateConfirmfn1 = (e) => {
formData.end_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show2.value = false
}
const rules = {
'type': {
type: 'number',
required: true,
message: '请选择灌溉方式',
trigger: ['change']
},
'start_date': {
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
},
'end_date': {
type: 'string',
required: true,
message: '请填写结束日期',
trigger: ['blur', 'change']
},
'area': {
type: 'string',
required: true,
message: '请填写土地面积',
trigger: ['blur', 'change']
},
'user': {
type: 'string',
required: true,
message: '请填写参与人',
trigger: ['blur', 'change']
}
// ,
// 'remark': {
// type: 'string',
// required: true,
// message: '',
// trigger: ['blur', 'change']
// },
}
onReady(() => {
form.value.setRules(rules);
//
const dateConfirmfn = (e) => {
formData.start_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show1.value = false
}
const dateConfirmfn1 = (e) => {
formData.end_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show2.value = false
}
const rules = {
'type': {
type: 'number',
required: true,
message: '请选择灌溉方式',
trigger: ['change']
},
'start_date': {
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
},
'end_date': {
type: 'string',
required: true,
message: '请填写结束日期',
trigger: ['blur', 'change']
},
'area': {
type: 'string',
required: true,
message: '请填写土地面积',
trigger: ['blur', 'change']
},
'user': {
type: 'string',
required: true,
message: '请填写参与人',
trigger: ['blur', 'change']
}
// ,
// 'remark': {
// type: 'string',
// required: true,
// message: '',
// trigger: ['blur', 'change']
// },
}
onReady(() => {
form.value.setRules(rules);
});
const navgo = (url) => {
uni.navigateTo({
url
})
}
const addFn = () => {
// console.log(formData)
form.value.validate().then(res => {
if (res) {
if (formData.area > dataobj.area) {
uni.$u.toast('灌溉面积不能超过种植面积')
return
}
formData.pic = pic
let data1 = {
plant_id: task_id.value,
type: 3,
detail: JSON.stringify(formData)
};
if (formData.pic.length == 0) {
uni.$u.toast('请上传图片')
return
}
let endTime = new Date(formData.end_date)
let startTime = new Date(formData.start_date)
let plantTime = new Date(dataobj.plant_date)
if (startTime < plantTime) {
uni.$u.toast("灌溉时间必须超过种植的时间");
return
}
if (endTime < plantTime) {
uni.$u.toast("灌溉时间必须超过种植的时间");
return
}
if (endTime < startTime) {
uni.$u.toast("结束时间不能小于开始时间");
return
} else if (startTime > endTime) {
uni.$u.toast("开始时间不能大于结束时间");
return
} else {
console.log("开始时间和结束时间合法");
}
});
const navgo = (url) => {
uni.navigateTo({
url
})
}
const addFn = () => {
// console.log(formData)
form.value.validate().then(res => {
if (res) {
if (formData.area > dataobj.area) {
uni.$u.toast('灌溉面积不能超过种植面积')
return
}
formData.pic = pic
let data1 = {
plant_id: task_id.value,
type: 3,
detail: JSON.stringify(formData)
};
if (formData.pic.length == 0) {
uni.$u.toast('请上传图片')
return
}
let endTime = new Date(formData.end_date)
let startTime = new Date(formData.start_date)
let plantTime = new Date(dataobj.plant_date)
if (startTime < plantTime) {
uni.$u.toast("灌溉时间必须超过种植的时间");
return
}
if (endTime < plantTime) {
uni.$u.toast("灌溉时间必须超过种植的时间");
return
}
if (endTime < startTime) {
uni.$u.toast("结束时间不能小于开始时间");
return
} else if (startTime > endTime) {
uni.$u.toast("开始时间不能大于结束时间");
return
} else {
console.log("开始时间和结束时间合法");
}
//
//
addaction(data1).then((res) => {
console.log(res)
if (res.code == 1) {
uni.$u.toast(res.msg)
uni.navigateBack({
delta: 1
})
}
})
// uni.$u.toast('')
}
}).catch((err)=>{
uni.$u.toast(err[0].message)
console.log(err)
})
addaction(data1).then((res) => {
console.log(res)
if (res.code == 1) {
uni.$u.toast(res.msg)
uni.navigateBack({
delta: 1
})
}
})
// uni.$u.toast('')
}
}).catch((err) => {
uni.$u.toast(err[0].message)
console.log(err)
})
}
//
const perviewFn = (url) => {
console.log(url)
uni.previewImage({
urls: [url]
})
}
//
const delimg = (i) => {
pic.splice(i, 1);
}
//
const updateImgFn = async () => {
}
//
const perviewFn = (url) => {
console.log(url)
uni.previewImage({
urls: [url]
})
}
//
const delimg = (i) => {
pic.splice(i, 1);
}
//
const updateImgFn = async () => {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
pic.push(res.data.url)
console.log(data.formData)
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
pic.push(res.data.url)
console.log(data.formData)
uni.$u.toast('上传成功')
uni.$u.toast('上传成功')
}
}
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
const getlist = () => {
plantdetail({
plant_id: task_id.value
}).then((res) => {
if (res.code == 1) {
// console.log(res)
Object.assign(dataobj, res.data)
}
});
};
const mode = ref('add')
onLoad((options) => {
if (options.task) {
let data = options.task ? JSON.parse(decodeURIComponent(options.task)) : null;
console.log(data, data.detail)
Object.assign(formData, data.detail);
pic.splice(0, pic.length, ...data.detail.pic);
formDatatype.value = range.find(item => item.value === formData.type).name;
mode.value = 'detail'
uni.setNavigationBarTitle({
title: '灌溉详情'
})
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
const getlist = () => {
plantdetail({
plant_id: task_id.value
}).then((res) => {
if (res.code == 1) {
// console.log(res)
Object.assign(dataobj, res.data)
}
});
};
const mode = ref('add')
onLoad((options) => {
if (options.task) {
let data = options.task ? JSON.parse(decodeURIComponent(options.task)) : null;
console.log(data, data.detail)
Object.assign(formData, data.detail);
pic.splice(0, pic.length, ...data.detail.pic);
formDatatype.value = range.find(item => item.value === formData.type).name;
mode.value = 'detail'
uni.setNavigationBarTitle({
title: '灌溉详情'
})
// formData=data.detail
// formData=data.detail
} else {
task_id.value = options.id
}
} else {
task_id.value = options.id
}
getlist()
getlist()
})
})
</script>
<style lang='scss' scoped>
.content {
padding-bottom: 100rpx;
}
page {
background-color: #f7fffc;
}
.tit {
display: flex;
justify-content: space-between;
}
.card {
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
.card-li-tit {
position: relative;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
margin-bottom: 20rpx;
}
.c-title {
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
&:before {
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
.up-img {
width: 341.71rpx
}
.c-box {
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.c-box-p {
padding: 20rpx;
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.btn {
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
.tit {
display: flex;
justify-content: space-between;
}
}
.card-li {
position: relative;
margin-bottom: 0;
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.up-img {
width: 341.71rpx
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
</style>

View File

@ -1,384 +1,419 @@
<template>
<!-- 播种 -->
<view class="content">
<view class="card">
<u-form labelPosition="top" labelWidth='100' :model="data.formData" ref="form1">
<u-form-item label="种植种类" prop="kind" borderBottom ref='item1' required>
<up-input placeholder="请输入种植种类" :disabled="mode=='detail'" border="surround"
v-model="data.formData.kind"></up-input>
</u-form-item>
<u-form-item label="种植品种" prop="breed" borderBottom required>
<up-input placeholder="请输入品种" :disabled="mode=='detail'" border="surround"
v-model="data.formData.breed"></up-input>
</u-form-item>
<u-form-item label="开始日期" prop="date" borderBottom required @click="openDate">
<up-input placeholder="请选择日期" readonly border="surround" v-model="data.formData.date"
style="pointer-events: none;"></up-input>
</u-form-item>
<!-- 播种 -->
<view class="content">
<view class="card">
<u-form labelWidth='100' :model="data.formData" ref="form1">
<view class="c-title">种植信息</view>
<view class="c-box">
<u-form-item label="种植种类" prop="kind" borderBottom ref='item1' required>
<up-input input-align="right" placeholder="请输入种类" :disabled="mode=='detail'" border="none"
v-model="data.formData.kind"></up-input>
</u-form-item>
<u-form-item label="种植品种" prop="breed" borderBottom required>
<up-input input-align="right" placeholder="请输入品种" :disabled="mode=='detail'" border="none"
v-model="data.formData.breed"></up-input>
</u-form-item>
<u-form-item label="种植面积(亩)" prop="area" borderBottom required>
<up-input input-align="right" placeholder="请输入种植面积" :disabled="mode=='detail'" type="number" border="none"
v-model="data.formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人员" prop="user" borderBottom required>
<up-input input-align="right" placeholder="请输入参与人姓名" :disabled="mode=='detail'" type="txt" border="none"
v-model="data.formData.user"></up-input>
</u-form-item>
<u-form-item label="种植开始日期" prop="date" borderBottom required @click="openDate">
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="data.formData.date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="card-li">
<view class="c-title">种植图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx" @click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
<view class="c-title">备注信息</view>
<view class="c-box" style="padding: 0 20rpx;">
<u-form-item borderBottom>
<u--textarea v-model="data.formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
<u-form-item label="种植面积(亩)" prop="area" borderBottom required>
<up-input placeholder="请输入种植面积" :disabled="mode=='detail'" type="number" border="surround"
v-model="data.formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人" prop="user" borderBottom required>
<up-input placeholder="请输入参与人" :disabled="mode=='detail'" type="txt" border="surround"
v-model="data.formData.user"></up-input>
</u-form-item>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
种植图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"
@click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
<u-form-item label="备注" borderBottom>
<u--textarea v-model="data.formData.remark" :disabled="mode=='detail'"
placeholder="请输入内容"></u--textarea>
</u-form-item>
</u-form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" /> -->
<u-datetime-picker :show="show" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show=false"></u-datetime-picker>
</view>
</view>
<view class="confirm" v-if="mode=='add'">
<view class="confirm-btn" style="color: white;background-color: #0AA565;" @click="addFn">
完成添加
</view>
</view>
</view>
</u-form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" /> -->
<u-datetime-picker :show="show" v-model="value1" mode="date" @confirm="dateConfirmfn" :formatter="formatter"
@cancel="show=false"></u-datetime-picker>
</view>
<u-button class="btn" v-if="mode=='add'" @click="addFn">完成添加</u-button>
</view>
</view>
</template>
<script setup>
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady
} from "@dcloudio/uni-app"
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady
} from "@dcloudio/uni-app"
import {
addplant
} from '@/api/api.js'
import {
addplant
} from '@/api/api.js'
const calendar = ref(null)
const form1 = ref(null);
const task_id = ref('');
const pic = reactive([]);
const value1 = ref(Date.now());
const show = ref(false);
const data = reactive({
formData: {
const calendar = ref(null)
const form1 = ref(null);
const task_id = ref('');
const pic = reactive([]);
const value1 = ref(Date.now());
const show = ref(false);
const data = reactive({
formData: {
kind: '',
breed: '',
area: '',
user: '',
date: '',
remark: '',
pic: []
},
rules: {
kind: [{
type: 'string',
required: true,
message: '请填写种植种类',
trigger: ['blur', 'change']
}],
breed: [{
type: 'string',
required: true,
message: '请填写种植品种',
trigger: ['blur', 'change']
}],
area: [{
type: 'string',
required: true,
message: '请填写种植面积',
trigger: ['blur', 'change']
}],
user: [{
type: 'string',
required: true,
message: '请填写参与人员',
trigger: ['blur', 'change']
}],
date: [{
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
}]
kind: '',
breed: '',
area: '',
user: '',
date: '',
remark: '',
pic: []
},
rules: {
kind: [{
type: 'string',
required: true,
message: '请填写种植种类',
trigger: ['blur', 'change']
}],
breed: [{
type: 'string',
required: true,
message: '请填写种植品种',
trigger: ['blur', 'change']
}],
area: [{
type: 'string',
required: true,
message: '请填写种植面积',
trigger: ['blur', 'change']
}],
user: [{
type: 'string',
required: true,
message: '请填写参与人员',
trigger: ['blur', 'change']
}],
date: [{
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
}]
}
})
}
})
onReady(() => {
form1.value.setRules(data.rules);
});
onReady(() => {
form1.value.setRules(data.rules);
});
const openDate = () => {
// calendar.value.open()
show.value = true
}
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
const openDate = () => {
// calendar.value.open()
show.value = true
}
if (type === 'month') {
return `${value}`;
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
const dateConfirmfn = (e) => {
data.formData.date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd')
show.value = false
}
if (type === 'day') {
return `${value}`;
//
const delimg = (i) => {
pic.splice(i, 1);
}
return value;
};
const dateConfirmfn = (e) => {
data.formData.date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show.value = false
}
const navgo = (url) => {
uni.navigateTo({
url
})
}
//
const perviewFn = (url) => {
console.log(url)
uni.previewImage({
urls: [url]
})
}
const addFn = async () => {
console.log(form1.value)
//
const delimg = (i) => {
pic.splice(i, 1);
}
const navgo = (url) => {
uni.navigateTo({
url
})
}
//
const perviewFn = (url) => {
console.log(url)
uni.previewImage({
urls: [url]
})
}
const addFn = async () => {
console.log(form1.value)
try {
const valid = await form1.value.validate();
try {
const valid = await form1.value.validate();
if (valid) {
data.formData.land_id = task_id.value
console.log('表单通过');
if (pic.length == 0) {
uni.$u.toast('请上传图片')
return
}
data.formData.pic = JSON.stringify(pic)
if (valid) {
data.formData.land_id = task_id.value
console.log('表单通过');
if (pic.length == 0) {
uni.$u.toast('请上传图片')
return
}
data.formData.pic = JSON.stringify(pic)
//
addplant(data.formData).then((res) => {
//
addplant(data.formData).then((res) => {
if (res.code == 1) {
if (res.code == 1) {
uni.navigateBack({
delta: 1
})
uni.$u.toast(res.msg)
}
})
} else {
//
console.log('表单验证未通过');
}
} catch (error) {
//
console.error(error);
}
uni.navigateBack({
delta: 1
})
uni.$u.toast(res.msg)
}
})
} else {
//
console.log('表单验证未通过');
}
} catch (error) {
//
console.error(error);
}
// form.value.validate().then(res => {
// console.log(6)
// }).catch(errors => {
// uni.$u.toast('')
// })
// console.log()
// form.value.validate().then(res => {
// console.log(6)
// }).catch(errors => {
// uni.$u.toast('')
// })
// console.log()
}
//
const updateImgFn = async () => {
}
//
const updateImgFn = async () => {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
pic.push(res.data.url)
pic.push(res.data.url)
console.log(pic)
uni.$u.toast('上传成功')
console.log(pic)
uni.$u.toast('上传成功')
}
}
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
const mode = ref('add')
onLoad((options) => {
task_id.value = options.id
// if (options.task_id) {
// mode.value = "detail"
// }
const mode = ref('add')
onLoad((options) => {
task_id.value = options.id
// if (options.task_id) {
// mode.value = "detail"
// }
})
})
</script>
<style lang='scss' scoped>
.content {
padding-bottom: 100rpx;
}
page{
background-color: #f7fffc;
}
.card{
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
.c-title{
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
&:before{
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
.c-box{
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.c-box-p{
padding: 20rpx;
}
.btn{
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.tit {
display: flex;
justify-content: space-between;
}
.tit {
display: flex;
justify-content: space-between;
}
.card-li-tit {
position: relative;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
margin-bottom: 20rpx;
}
.card-li {
position: relative;
margin-bottom: 0;
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
.up-img {
width: 341.71rpx
}
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.up-img {
width: 341.71rpx
}
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
</style>

View File

@ -1,469 +1,516 @@
<template>
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelPosition="top" labelWidth='120' :model="formData" :rules="rules" ref="form">
<u-form-item label="除草剂种类" prop="kind" borderBottom ref='item1' required>
<up-input placeholder="请输入除草剂种类" :disabled="mode=='detail'" border="surround"
v-model="formData.kind"></up-input>
</u-form-item>
<u-form-item label="除草剂品牌" prop="breed" borderBottom required>
<up-input placeholder="请输入除草剂品牌" :disabled="mode=='detail'" border="surround"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="除草剂用量(斤)" prop="dosage" borderBottom required>
<up-input placeholder="请输入除草剂用量" border="surround" type='number' :disabled="mode=='detail'"
v-model="formData.dosage"></up-input>
</u-form-item>
<!-- 播种 -->
<view class="content">
<view class="card">
<u--form labelWidth='120' :model="formData" :rules="rules" ref="form">
<view class="c-title">除草信息</view>
<view class="c-box">
<u-form-item label="除草剂种类" prop="kind" borderBottom ref='item1' required>
<up-input input-align="right" placeholder="请输入除草剂种类" :disabled="mode=='detail'" border="none"
v-model="formData.kind"></up-input>
</u-form-item>
<u-form-item label="除草剂品牌" prop="breed" borderBottom required>
<up-input input-align="right" placeholder="请输入除草剂品牌" :disabled="mode=='detail'" border="none"
v-model="formData.breed"></up-input>
</u-form-item>
<u-form-item label="除草剂用量(斤)" prop="dosage" borderBottom required>
<up-input input-align="right" placeholder="请输入除草剂用量" border="none" type='number' :disabled="mode=='detail'"
v-model="formData.dosage"></up-input>
</u-form-item>
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input placeholder="请选择日期" readonly border="surround" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<u-form-item label="作业面积(亩)" prop="area" borderBottom required>
<up-input placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="surround"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人" prop="user" borderBottom required>
<up-input placeholder="请输入参与人" :disabled="mode=='detail'" type="txt" border="surround"
v-model="formData.user"></up-input>
</u-form-item>
<u-form-item label="作业面积(亩)" prop="area" borderBottom required>
<up-input input-align="right" placeholder="请输入作业面积" :disabled="mode=='detail'" type="number" border="none"
v-model="formData.area"></up-input>
</u-form-item>
<u-form-item label="参与人员" prop="user" borderBottom required>
<up-input input-align="right" placeholder="请输入参与人姓名" :disabled="mode=='detail'" type="txt" border="none"
v-model="formData.user"></up-input>
</u-form-item>
<view class="" v-if="mode=='add'">
<u-form-item label="开始日期" @click="openDate" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" @click="openDate1" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
<view class="" v-else>
<u-form-item label="开始日期" prop="start_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.start_date"
style="pointer-events: none;"></up-input>
</u-form-item>
<u-form-item label="结束日期" prop="end_date" borderBottom required>
<up-input input-align="right" placeholder="请选择日期" suffixIcon="arrow-down" suffix-icon-style="color: #b6b6b6;" readonly border="none" v-model="formData.end_date"
style="pointer-events: none;"></up-input>
</u-form-item>
</view>
</view>
<view class="card-li">
<view class="card-li-tit">
<span>*</span>
除草图片
</view>
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx"
@click="perviewFn(item)"></u-image>
</view>
</view>
</view>
<view class="card-li">
<view class="c-title">除草图片</view>
<view class="c-box c-box-p">
<view class="code-img1">
<view class="" v-if="pic.length>0"
style="display: flex;flex-direction: row;flex-wrap: wrap;margin-bottom: 30rpx;">
<view class="" v-for="(item,i) in pic" style="margin-right: 30rpx;">
<view class="">
<u-icon name="close" size="15" style="margin-left:120.85rpx;" @click="delimg(i)"
v-show="mode=='add'"></u-icon>
<u-image :src="item" width="150.85rpx" height="150.85rpx" @click="perviewFn(item)"></u-image>
</view>
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
<view class="code-img" v-if="mode=='add'">
<view class="" @click="updateImgFn">
<view class="carime-icon">
<u-image src="/static/img/DJSC.png" width="91.12rpx" height="91.12rpx"></u-image>
<view class="">
点击上传图片
</view>
</view>
</view>
</view>
</view>
</view>
<u-form-item label="备注" prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
</view>
</view>
</u--form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" />
<view class="c-title">备注信息</view>
<view class="c-box" style="padding: 0 20rpx;">
<u-form-item prop="remark" borderBottom>
<u--textarea v-model="formData.remark" :disabled="mode=='detail'" placeholder="请输入内容"></u--textarea>
</u-form-item>
</view>
</u--form>
<view>
<!-- <uni-calendar ref="calendar" :showMonth="true" :lunar="true" :insert="false" @confirm="dateConfirmfn" />
<uni-calendar ref="calendar1" :showMonth="true" :lunar="true" :insert="false"
@confirm="dateConfirmfn1" /> -->
<u-datetime-picker :show="show1" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show1=false"></u-datetime-picker>
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
</view>
</view>
<view class="confirm" v-if="mode=='add'">
<view class="confirm-btn" style="color: white;background-color: #0AA565;" @click="addFn">
完成添加
</view>
</view>
<u-datetime-picker :show="show1" v-model="value1" mode="datetime" @confirm="dateConfirmfn"
:formatter="formatter" @cancel="show1=false"></u-datetime-picker>
<u-datetime-picker :show="show2" v-model="value1" mode="datetime" @confirm="dateConfirmfn1"
:formatter="formatter" @cancel="show2=false"></u-datetime-picker>
</view>
<u-button class="btn" v-if="mode=='add'" @click="addFn">完成添加</u-button>
</view>
</view>
</view>
</template>
<script setup>
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady
} from '@dcloudio/uni-app';
import {
addaction,
plantdetail
} from '@/api/api.js'
import {
Uploads
} from "@/api/upload.js"
import {
reactive,
ref
} from "vue";
import {
onLoad,
onReady
} from '@dcloudio/uni-app';
import {
addaction,
plantdetail
} from '@/api/api.js'
const pic = reactive([]);
const calendar = ref(null)
const calendar1 = ref(null)
const form = ref(null)
const task_id = ref('');
const value1 = ref(Date.now());
const show1 = ref(false);
const show2 = ref(false);
const openDate = () => {
// calendar.value.open()
show1.value = true
}
const dataobj = reactive({})
const openDate1 = () => {
// calendar1.value.open()
show2.value = true
}
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
// console.log()
const formData = reactive({
kind: "",
breed: "",
dosage: "",
start_date: "",
dosage: "",
end_date: "",
})
const pic = reactive([]);
const calendar = ref(null)
const calendar1 = ref(null)
const form = ref(null)
const task_id = ref('');
const value1 = ref(Date.now());
const show1 = ref(false);
const show2 = ref(false);
const openDate = () => {
// calendar.value.open()
show1.value = true
}
const dataobj = reactive({})
const openDate1 = () => {
// calendar1.value.open()
show2.value = true
}
const formatter = (type, value) => {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
if (type === 'day') {
return `${value}`;
}
return value;
};
// console.log()
const formData = reactive({
kind: "",
breed: "",
dosage: "",
start_date: "",
dosage: "",
end_date: "",
})
//
const dateConfirmfn = (e) => {
formData.start_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show1.value = false
}
const dateConfirmfn1 = (e) => {
formData.end_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show2.value = false
}
const rules = ref({
'kind': {
type: 'string',
required: true,
message: '请填写除草剂种类',
trigger: ['blur', 'change']
},
'breed': {
type: 'string',
required: true,
message: '请填写除草剂品牌',
trigger: ['blur', 'change']
},
'dosage': {
type: 'string',
required: true,
message: '请填写除草剂用量',
trigger: ['blur', 'change']
},
'start_date': {
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
},
'end_date': {
type: 'string',
required: true,
message: '请填写结束日期',
trigger: ['blur', 'change']
},
'area': {
type: 'string',
required: true,
message: '请填写土地面积',
trigger: ['blur', 'change']
},
'user': {
type: 'string',
required: true,
message: '请填写参与人',
trigger: ['blur', 'change']
}
// ,
// 'remark': {
// type: 'string',
// required: true,
// message: '',
// trigger: ['blur', 'change']
// },
})
onReady(() => {
form.value.setRules(rules);
//
const dateConfirmfn = (e) => {
formData.start_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show1.value = false
}
const dateConfirmfn1 = (e) => {
formData.end_date = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM ')
show2.value = false
}
const rules = ref({
'kind': {
type: 'string',
required: true,
message: '请填写除草剂种类',
trigger: ['blur', 'change']
},
'breed': {
type: 'string',
required: true,
message: '请填写除草剂品牌',
trigger: ['blur', 'change']
},
'dosage': {
type: 'string',
required: true,
message: '请填写除草剂用量',
trigger: ['blur', 'change']
},
'start_date': {
type: 'string',
required: true,
message: '请填写开始日期',
trigger: ['blur', 'change']
},
'end_date': {
type: 'string',
required: true,
message: '请填写结束日期',
trigger: ['blur', 'change']
},
'area': {
type: 'string',
required: true,
message: '请填写土地面积',
trigger: ['blur', 'change']
},
'user': {
type: 'string',
required: true,
message: '请填写参与人',
trigger: ['blur', 'change']
}
// ,
// 'remark': {
// type: 'string',
// required: true,
// message: '',
// trigger: ['blur', 'change']
// },
})
onReady(() => {
form.value.setRules(rules);
});
//
const updateImgFn = async () => {
});
//
const updateImgFn = async () => {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
pic.push(res.data.url)
console.log(data.formData)
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
Uploads(res.tempFilePaths[0], 'img').then(res => {
console.log(res)
if (res.code == 1) {
pic.push(res.data.url)
console.log(data.formData)
uni.$u.toast('上传成功')
uni.$u.toast('上传成功')
}
}
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
//
const perviewFn = (url) => {
}).catch(err => {
//console.log('err', err);
// uni.$u.toast('')
})
},
fail: function(err) {
//console.log('choose');
uni.$u.toast('添加失败')
}
});
// let res = await Uploads()
// data.formData.pic = res.data.image
}
//
const perviewFn = (url) => {
uni.previewImage({
urls: [url]
})
}
//
const delimg = (i) => {
pic.splice(i, 1);
}
uni.previewImage({
urls: [url]
})
}
//
const delimg = (i) => {
pic.splice(i, 1);
}
const addFn = () => {
form.value.validate().then(res => {
// console.log(res)
if (res) {
const addFn = () => {
form.value.validate().then(res => {
// console.log(res)
if (res) {
if (formData.area > dataobj.area) {
uni.$u.toast('作业面积不能超过种植面积')
return
}
if (formData.area > dataobj.area) {
uni.$u.toast('作业面积不能超过种植面积')
return
}
formData.pic = pic
let data1 = {
plant_id: task_id.value,
type: 2,
detail: JSON.stringify(formData)
};
if (formData.pic.length == 0) {
formData.pic = pic
let data1 = {
plant_id: task_id.value,
type: 2,
detail: JSON.stringify(formData)
};
if (formData.pic.length == 0) {
uni.$u.toast('请上传图片')
return
}
let endTime = new Date(formData.end_date)
let startTime = new Date(formData.start_date)
let plantTime = new Date(dataobj.plant_date)
uni.$u.toast('请上传图片')
return
}
let endTime = new Date(formData.end_date)
let startTime = new Date(formData.start_date)
let plantTime = new Date(dataobj.plant_date)
if (startTime < plantTime) {
uni.$u.toast("除草时间必须超过种植的时间");
return
}
if (endTime < plantTime) {
uni.$u.toast("除草时间必须超过种植的时间");
return
}
if (endTime < startTime) {
uni.$u.toast("结束时间不能小于开始时间");
return
} else if (startTime > endTime) {
uni.$u.toast("开始时间不能大于结束时间");
return
} else {
console.log("开始时间和结束时间合法");
}
if (startTime < plantTime) {
uni.$u.toast("除草时间必须超过种植的时间");
return
}
if (endTime < plantTime) {
uni.$u.toast("除草时间必须超过种植的时间");
return
}
if (endTime < startTime) {
uni.$u.toast("结束时间不能小于开始时间");
return
} else if (startTime > endTime) {
uni.$u.toast("开始时间不能大于结束时间");
return
} else {
console.log("开始时间和结束时间合法");
}
console.log('表单通过');
console.log('表单通过');
//
//
addaction(data1).then((res) => {
console.log(res)
if (res.code == 1) {
uni.$u.toast(res.msg)
uni.navigateBack({
delta: 1
})
}
})
// uni.$u.toast('')
}
addaction(data1).then((res) => {
console.log(res)
if (res.code == 1) {
uni.$u.toast(res.msg)
uni.navigateBack({
delta: 1
})
}
})
// uni.$u.toast('')
}
}).catch((err) => {
uni.$u.toast(err[0].message)
console.log(err)
})
}).catch((err) => {
uni.$u.toast(err[0].message)
console.log(err)
})
}
const getlist = () => {
plantdetail({
plant_id: task_id.value
}).then((res) => {
if (res.code == 1) {
// console.log(res)
Object.assign(dataobj, res.data)
}
});
};
}
const getlist = () => {
plantdetail({
plant_id: task_id.value
}).then((res) => {
if (res.code == 1) {
// console.log(res)
Object.assign(dataobj, res.data)
}
});
};
const mode = ref('add')
onLoad((options) => {
if (options.task) {
let data = options.task ? JSON.parse(decodeURIComponent(options.task)) : null;
// console.log(data, data.detail)
Object.assign(formData, data.detail);
const mode = ref('add')
onLoad((options) => {
if (options.task) {
let data = options.task ? JSON.parse(decodeURIComponent(options.task)) : null;
// console.log(data, data.detail)
Object.assign(formData, data.detail);
pic.splice(0, pic.length, ...data.detail.pic);
pic.splice(0, pic.length, ...data.detail.pic);
mode.value = 'detail'
uni.setNavigationBarTitle({
title: '除草详情'
})
// formData=data.detail
mode.value = 'detail'
uni.setNavigationBarTitle({
title: '除草详情'
})
// formData=data.detail
} else {
task_id.value = options.id
}
} else {
task_id.value = options.id
}
getlist()
})
getlist()
})
</script>
<style lang='scss' scoped>
.content {
padding-bottom: 100rpx;
}
page {
background-color: #f7fffc;
}
.tit {
display: flex;
justify-content: space-between;
}
.card {
background-color: #f7fffc;
padding: 0;
padding-bottom: 80rpx;
.card-li-tit {
position: relative;
.c-title {
font-weight: bold;
display: flex;
align-items: center;
padding: 30rpx;
padding-bottom: 15rpx;
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
&:before {
content: '';
display: inline-block;
height: 0.8rem;
width: 6rpx;
margin-top: 0.2rem;
margin-right: 10rpx;
background-color: #35d190;
border-radius: 6rpx;
}
}
margin-bottom: 20rpx;
}
.c-box {
background-color: #fff;
padding-left: 30rpx;
padding-right: 20rpx;
padding-bottom: 20rpx;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.c-box-p {
padding: 20rpx;
}
.up-img {
width: 341.71rpx
}
.btn {
margin: 20rpx auto;
width: 694rpx;
height: 80rpx;
border-radius: 80rpx;
background-color: #4ad69b;
color: #fff;
}
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.tit {
display: flex;
justify-content: space-between;
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.card-li {
position: relative;
margin-bottom: 0;
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
span {
position: absolute;
left: -9px;
color: #f56c6c;
line-height: 20px;
font-size: 20px;
top: 3px;
}
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confim-btn {
margin: 0 auto;
width: 196.26rpx;
height: 66.59rpx;
/* border: ; */
border: #00A15E 1px solid;
color: #00A15E;
display: flex;
align-items: center;
justify-content: center;
border-radius: 42.06rpx 42.06rpx 42.06rpx 42.06rpx;
}
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
.up-img {
width: 341.71rpx
}
.today-btn {
width: 588.79rpx;
background-color: #00A15E;
color: white;
position: fixed;
bottom: 40rpx;
/* transform: ; */
left: 50%;
transform: translateX(-50%);
background: linear-gradient(to right, #00A15E, #4CC593);
/* margin: 0 auto; */
}
.code-img {
background-color: #F4F4F4;
height: 350.47rpx;
position: relative;
/* margin-bottom: 100rpx; */
.carime-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
flex-direction: column;
align-items: center;
}
}
.confirm {
position: fixed;
height: 84.11rpx;
display: flex;
bottom: 30rpx;
width: 750rpx;
.confirm-btn {
width: 315.42rpx;
height: 84.11rpx;
border: #00A15E 1px solid;
margin: 0 auto;
border-radius: 80rpx;
text-align: center;
line-height: 84rpx;
}
}
</style>