Commit fab046db by xue_wengang

侦查终结之间限制

parent a3062e63
<template>
<el-date-picker
v-model.trim="val"
:picker-options="pickerOptions"
:type="dateType"
:placeholder="placeholder"
:value-format="dateFormat"
:format="dateFormat"
:disabled="disabled"
@change="handleChange"
clearable
/>
</template>
<script>
//此组件主要目的是禁用过去时间的选择
export default {
props: {
value: {
default: "",
type: String,
},
dateType: {
default: "datetime",
type: String,
},
disabled: {
default: false,
type: Boolean,
},
limitBefore: {
default: "",
type: String,
},
limitAfter: {
default: "",
type: String,
}
},
data() {
const that = this;
return {
val: this.value,
dateFormat: this.dateType == "datetime" ? "yyyy-MM-dd HH:mm:ss" : "yyyy-MM-dd",
placeholder: this.dateType == "datetime" ? "选择时间" : "选择日期",
pickerOptions: {
selectableRange:(()=>{
if(that.dateType == "datetime"){
  let data=new Date();
let hour=data.getHours();
let minute=data.getMinutes();
let second=data.getSeconds();
return [`${hour}:${minute}:${second} - 23:59:59`]
}
})(),
disabledDate: (time) => {
if(that.limitBefore && that.limitAfter) {
return time.getTime() < new Date(that.limitBefore).getTime() - 8.64e7 || time.getTime() > new Date(that.limitAfter).getTime();
}else if(that.limitBefore && that.limitAfter == "") {
return time.getTime() < new Date(that.limitBefore).getTime();
}else if(that.limitBefore == "" && that.limitAfter) {
return time.getTime() > new Date(that.limitAfter).getTime() || time.getTime() < Date.now() - 8.64e7;
}else{
return time.getTime() < Date.now() - 8.64e7;
}
}
},
};
},
watch: {
value(newVal) {
this.val = newVal;
},
val: {
handler(newValue, oldValue) {
if (newValue && this.dateType == "datetime") {
const limitBefore = new Date(this.limitBefore)
const limitAfter = new Date(this.limitAfter)
const _newValue = new Date(newValue)
let startTime = "";
let endTime = "";
startTime = this.limitBefore ? this.$moment(this.limitBefore).format("HH:mm:ss") : "00:00:00";
endTime = this.limitAfter ? this.$moment(this.limitAfter).format("HH:mm:ss") : "23:59:59";
this.pickerOptions.selectableRange = startTime + " - " + endTime;
if (_newValue <= limitBefore) {
this.val = this.limitBefore
return false
}
if (_newValue >= limitAfter) {
this.val = this.limitAfter
return false
}
let date = new Date();
let nowDate = this.$moment(date).format("HH:mm:ss");
let hh1 = this.$moment(newValue).format("HH:mm:ss")
if (!this.limitBefore || limitBefore.getTime() < _newValue.getTime()) {
startTime = nowDate;
}
if (!this.limitAfter || limitAfter.getTime() > _newValue.getTime()) {
endTime = "23:59:59";
}
if (this.$moment(date).format("yyyy-MM-DD") === this.$moment(newValue).format("yyyy-MM-DD")) {
if(hh1 < nowDate) {
this.val = this.$moment(new Date()).format("yyyy-MM-DD HH:mm:ss");
}
startTime = nowDate;
} else {
startTime = "00:00:00";
}
this.pickerOptions.selectableRange = startTime + " - " + endTime;
}
},
deep: true,
immediate: true,
}
},
methods: {
handleChange(value) {
if(value){
this.$emit("change", value);
}else{
this.$emit("change", "");
}
}
}
};
</script>
......@@ -267,6 +267,15 @@
:class="item.date"
>
</el-date-picker>
<!-- 时间限制 -->
<limit-before-time-picker
v-else-if="item.type == 'limitTime'"
:value="formLabelAlign[item.id]"
dateType="date"
style="width: 100%"
:limitBefore="ajXXAll.larq"
@change="(value) => (formLabelAlign[item.id] = value)"
/>
<div
v-else-if="item.type == 'datetime'"
style="display: flex"
......@@ -1559,6 +1568,7 @@ import draggable from "vuedraggable";
import LazySelectTreeDialog from "@c/lazy_treeCode_components.vue";
import SelectTree from "@c/tree_components.vue";
import SelectTreeDialog from "@c/treeCode_components.vue";
import LimitBeforeTimePicker from "@c/LimitBeforeTimePicker.vue";
// import PureFormPage from "./PureFormPage.vue";
import utilTool from "@/utils/util.js";
import ddMap from "@c/zuobiaoshiqu/index.vue";
......@@ -1570,6 +1580,7 @@ export default {
SelectTree,
SelectTreeDialog,
ddMap,
LimitBeforeTimePicker
},
props: {
headerTitle: String,
......@@ -1961,7 +1972,7 @@ export default {
{
name: "侦查终结日期:",
id: "zczjZxsj01",
type: "dates",
type: "limitTime",
prop: "checkEmpty",
// isdisabled: true,
value: "",
......
......@@ -267,6 +267,15 @@
:class="item.date"
>
</el-date-picker>
<!-- 时间限制 -->
<limit-before-time-picker
v-else-if="item.type == 'limitTime'"
:value="formLabelAlign[item.id]"
dateType="date"
style="width: 100%"
:limitBefore="ajXXAll.larq"
@change="(value) => (formLabelAlign[item.id] = value)"
/>
<div
v-else-if="item.type == 'datetime'"
style="display: flex"
......@@ -1559,6 +1568,7 @@ import draggable from "vuedraggable";
import LazySelectTreeDialog from "@c/lazy_treeCode_components.vue";
import SelectTree from "@c/tree_components.vue";
import SelectTreeDialog from "@c/treeCode_components.vue";
import LimitBeforeTimePicker from "@c/LimitBeforeTimePicker.vue";
// import PureFormPage from "./PureFormPage.vue";
import utilTool from "@/utils/util.js";
import ddMap from "@c/zuobiaoshiqu/index.vue";
......@@ -1570,6 +1580,7 @@ export default {
SelectTree,
SelectTreeDialog,
ddMap,
LimitBeforeTimePicker
},
props: {
headerTitle: String,
......@@ -1682,8 +1693,8 @@ export default {
// ],
// pasddm: [{ required: true, message: "不能为空", trigger: "change" }],
tssddmbcms: null,
zadjdmbcms: [
{ min: 0, max: 30, message: '最大长度为30', trigger: 'blur' },
zadjdmbcms: [
{ min: 0, max: 30, message: "最大长度为30", trigger: "blur" },
],
flwsDzwjnr7: null,
},
......@@ -1960,7 +1971,7 @@ export default {
{
name: "侦查终结日期:",
id: "zczjZxsj01",
type: "dates",
type: "limitTime",
// prop: "checkEmpty",
// isdisabled: true,
value: "",
......@@ -3124,7 +3135,7 @@ export default {
}
}
self.$forceUpdate();
// "data:image/jpg;base64," + response.data.data.xp,
// "data:image/jpg;base64," + response.data.data.xp,
self.getzmzpSp(
response.data.data.xp,
i,
......@@ -3154,14 +3165,14 @@ export default {
response.data.data[ckIndex];
}
}
//"data:image/jpg;base64," + response.data.data.xp,
//"data:image/jpg;base64," + response.data.data.xp,
self.$forceUpdate();
response.data.data.xp,
self.getzmzpSp(
response.data.data.xp,
i,
self.formLabelAlign["fzxyr"][i].zhfzxyrAsjxgrybh
);
response.data.data.xp,
self.getzmzpSp(
response.data.data.xp,
i,
self.formLabelAlign["fzxyr"][i].zhfzxyrAsjxgrybh
);
}
}
});
......@@ -4310,8 +4321,8 @@ export default {
var formData = new FormData();
debugger;
let queryUrl = "";
formData.append("asjxgrybh", asjxgrybh);
formData.append("ryzpDzwjnr",xp);
formData.append("asjxgrybh", asjxgrybh);
formData.append("ryzpDzwjnr", xp);
queryUrl = "/tbStRyZp/tbstryzp/saveCkzp";
Http.post(`${url.BaseURL}${queryUrl}`, formData, {
headers: {
......@@ -4399,7 +4410,7 @@ export default {
}
}
self.$forceUpdate();
// "data:image/jpg;base64," + response.data.data.xp,
// "data:image/jpg;base64," + response.data.data.xp,
self.getzmzpSp(
response.data.data.xp,
i,
......@@ -6679,7 +6690,14 @@ export default {
loadings.close();
window.open(pdfUrl);
});
} else if (file.gs == ".jpg" || file.gs == ".jpeg" || file.gs == ".png" || file.gs == ".JPG" || file.gs == ".JPEG" || file.gs == ".PNG" ) {
} else if (
file.gs == ".jpg" ||
file.gs == ".jpeg" ||
file.gs == ".png" ||
file.gs == ".JPG" ||
file.gs == ".JPEG" ||
file.gs == ".PNG"
) {
this.filePreview = `data:image/${file.gs.substring(1)};base64,${
file.url
}`;
......@@ -7452,7 +7470,11 @@ export default {
newValue[i]["bhrAsjxgrysfAsjxgrysfdm"]
) {
if (newValue[i]["bhrAsjxgrysfAsjxgrysfdm"] == "99") {
self.$set(self.rules, "bhrxx" + y + ".bhrNl", self.$rules["number"]);
self.$set(
self.rules,
"bhrxx" + y + ".bhrNl",
self.$rules["number"]
);
} else {
for (let y in self.rules) {
if (y == "bhrxx" + i + ".bhrAsjxgrysfDmbcms") {
......
......@@ -298,6 +298,14 @@
v-else-if="item2.type == 'datetimerange'"
>
</el-date-picker>
<limit-before-time-picker
v-else-if="item2.type == 'limitTime'"
:value="formLabelAlign[item2.id]"
dateType="date"
style="width: 100%"
:limitBefore="oldData.larq"
@change="(value) => (formLabelAlign[item2.id] = value)"
/>
<!--多选框-->
<div class="zdyInputW" v-else-if="item2.type == 'checkbox'">
<el-checkbox-group
......@@ -1311,6 +1319,7 @@ import "@/assets/styles/iconfont.css";
import listHeader from "@c/header_components.vue";
import SelectTree from "@c/tree_components.vue";
import SelectTreeDialog from "@c/treeCode_components.vue";
import LimitBeforeTimePicker from "@c/LimitBeforeTimePicker.vue";
import Http from "@/utils/axiosHttp.js";
import LazySelectTreeDialog from "@c/lazy_treeCode_components.vue";
import url from "@/api/base";
......@@ -1322,6 +1331,7 @@ export default {
listHeader,
SelectTreeDialog,
LazySelectTreeDialog,
LimitBeforeTimePicker,
},
data() {
return {
......@@ -1375,7 +1385,7 @@ export default {
{
name: "侦查终结日期:",
id: "zczjZxsj01",
type: "datetime",
type: "limitTime",
prop: "checkEmpty",
// isdisabled: true,
value: "",
......@@ -2244,11 +2254,10 @@ export default {
},
clearFileList() {
let self = this;
self.$set(self.fileLists, "050101", []);
self.$set(self.fileLists, "050101", []);
self.$set(self.fileLists, "fzxyr", []);
},
getDialogSeleted(label) {
debugger;
this.zczjdwGajgmc = label.substring(0, 6);
},
deleteObj(obj, item2) {
......@@ -2946,7 +2955,6 @@ export default {
},
getRyckZp(sfzh, index) {
debugger;
let self = this;
var xp = new Promise((resove, reject) => {
self
......@@ -3339,7 +3347,6 @@ export default {
var origionXyr = self.xyrXXAll.find((xyrItem) => {
return xyrItem.xxzjbh == xyrForm[y].xxzjbh;
});
debugger;
//如果原值存在则判断是否改变将改变的值存入日志
if (origionXyr) {
let rz2 = {},
......@@ -3356,7 +3363,6 @@ export default {
];
}
}
debugger;
if (JSON.stringify(updateKey2) == "{}") {
self.count++;
} else {
......@@ -3393,7 +3399,6 @@ export default {
self.saveLoading.close();
console.log(err);
});
debugger;
self.saveXyrzp(xyrForm[y].ryzpList);
}
}
......@@ -3459,7 +3464,6 @@ export default {
*/
recordUpdateValue(sysRecordLog) {
var self = this;
debugger;
let queryUrl = "";
if (this.zcType == "ja") {
queryUrl = "/sysRecordLog/recordUpdateValue";
......@@ -3779,8 +3783,6 @@ export default {
// });
},
handlePrive(file) {
debugger;
const isJPG = /^.*\.(jpeg|png|jpg|JPG|JPEG|PNG)$/i.test(file.gs);
var self = this;
var index = file.name.lastIndexOf(".");
......@@ -3838,7 +3840,6 @@ export default {
// }`;
// this.filePreviewFlag = true;
} else {
debugger;
var urls = `${url.BaseURL}/flwsFj/tbstasjflwsCj/downloadFlws`;
var params = new FormData();
params.append("xxzjbh", file.xxzjbh);
......@@ -3863,7 +3864,6 @@ export default {
}
},
handlerPreview(file, fileList, item) {
debugger;
var self = this;
var index = file.name.lastIndexOf(".");
const isJPG = /^.*\.(jpeg|png|jpg|JPG|JPEG|PNG)$/i.test(file.gs);
......@@ -3936,7 +3936,6 @@ export default {
},
}
).then((res) => {
debugger;
if (
res.data.data.asjfjDzwjnr &&
res.data.data.asjfjDzwjnr.length > 0
......@@ -4589,7 +4588,6 @@ export default {
* @cur 嫌疑人(正,左,右)索引
*/
handleChange(file, fileList, item, parentItem, itemIndex, cur) {
debugger;
var self = this;
var formData = new FormData();
var reader;
......@@ -4701,7 +4699,6 @@ export default {
message: res.data.message,
offset: 200,
});
debugger;
isPic = false;
let n = "";
if (item.name == "侦查终结报告书") {
......@@ -5249,7 +5246,6 @@ export default {
},
"formLabelAlign.zadjdm": {
handler: function (val, oldval) {
debugger;
if (val == "9900") {
this.propFormField[1].data[3].prop = "checkEmpty";
// this.$set(this.rules.zadjdmbcms[0], "required", true);
......@@ -5283,7 +5279,6 @@ export default {
deep: true,
},
count(val) {
debugger;
let self = this,
total = 0;
total = 1 + self.formLabelAlign["fzxyr"].length * 2;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment